百科问答小站 logo
百科问答小站 font logo



请问这段代码是什么意思,据说能让人月入过w? 第1页

  

user avatar   lu-mi-ya-56 网友的相关建议: 
      

这是DJB2 hash算法,用途将一个字符串映射为一个整数,由Daniel J. Bernstein在1991年发明……

       hash(unsigned char *str) {     unsigned long hash = 5381;     int c;      while (c = *str++)         hash = ((hash << 5) + hash) + c; /* hash * 33 + c */      return hash; }     

介绍可以看这里

Written by Daniel J. Bernstein (also known as djb), this simple hash function dates back to 1991.
Hash functions have wide applications in computer science and in cryptography. They are used to map a potentially large amount of data to a number that represents it.
For example, the hash function from this code snippet maps Hello to 210676686969, but Hello! to 6952330670010. Despite the fact there’s only one character different (the exclamation mark), the number returned is completely different.



  

相关话题

  为什么有人可以在屎一样混乱的几千行代码里加功能?不重构能驾驭屎山吗? 
  2013 年末,IBM 连续 6 个季度业绩下降,是出了什么问题? 
  一行 Java 代码(以分号结束)能实现什么丧心病狂的功能? 
  代码初学者,学到一段时间后,怎么寻找练手的项目? 
  你是因为什么而喜欢上编程的? 
  一百行以下有哪些给力代码? 
  面向对象中接口应该更抽象还是更具象? 
  如何优雅地利用c++编程从1乘到20? 
  几乎零基础的电子开发人员,如何成为优秀的程序员? 
  可以在非中文的网站使用中文吗? 

前一个讨论
为什么现在的男孩子谈恋爱都喜欢白嫖?
下一个讨论
有律师执照的律师,真的可以随时说出某个人违反了什么法、第几条吗?





© 2024-12-22 - tinynew.org. All Rights Reserved.
© 2024-12-22 - tinynew.org. 保留所有权利