财新传媒 财新传媒

阅读:0
听报道

原著: XKCD
汉化: Oicebot & Ent

恭喜你发现本文的秘密!
0x5f375a86来自一个传奇算法,出自John Carmack开发的《雷神之锤3》的3D引擎。

这个引擎的源代码里包括一个反平方倒数的算法,其速度要比标准的牛顿迭代法快上几十倍,而其中的关键是一行神秘的代码和一个莫名其妙的数字:[ i   = 0x5f3759df - ( i >> 1 ); // what the fuck? ] 。没有人知道Carmack是怎么发现这个数字的。普度大学的数学家Lomont觉得很好玩,于是自己从理论推导出了一个可能的最佳值0x5f375a86,和Carmack的接近但略微好一丁点,他很怀疑Carmack其实是用试错法找到原来的数的……于是Lomont写了一篇文章发表了这个算法,称之为“Fast inverse square root”。天知道还有多少这样的神奇算法藏在各种商业软件里,不为人知。

 

学界 vs. 商界 - 科学松鼠会 - 科学松鼠会

学界 vs. 商界 - 科学松鼠会 - 科学松鼠会

  评论这张
转发至微博
话题:



0

推荐

科学松鼠会

科学松鼠会

4011篇文章 5年前更新

什么是科学松鼠会? 我们认为,对于部分人来说,科学就像一枚枚难以开启的坚果,虽味美却不易入口。 我们希望自己能够像松鼠一样,打开科学的坚硬外壳,将有营养的果仁剥出来,让人们能够领略到科学的美妙。 我们试图让科学传播并且流行起来。 这里是科学松鼠会的网站的一个镜像,大家的留言我们可能没办法一一回复,如果您有什么问题,欢迎到科学松鼠会的主站提问:http://songshuhui.net/

文章