百科问答小站 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.



  

相关话题

  程序员如何挽救一个失败的项目? 
  为什么C没有布尔类型? 
  如果中国一开始就禁止微软和英特尔AMD进入中国大陆地区,现在的中国大陆地区会出现哪些现象? 
  硬盘写到一半断电时文件系统发生了什么? 
  参加ICPC国际编程竞赛的大学生到底有多厉害,在校生该如何准备? 
  有没有可能现在设计一个程序语言,它能够充分吸收现存语言的优点,同时排除那些缺点? 
  码农们最常说的「谎言」有哪些? 
  低代码开发前景如何,大家都真的看好低代码开发吗? 
  为什么程序员要使用三元运算符而不是显式写出 if 语句? 
  学习机器学习应该看哪些书籍? 

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





© 2025-05-29 - tinynew.org. All Rights Reserved.
© 2025-05-29 - tinynew.org. 保留所有权利