文章预览
最近,刷到一个特别有意思的事,有网友吐槽,看见同事在代码注释中骂领导 于是,他发帖问大家:“要不要删掉再提交?” 其实我觉得,你首先得晓得这段代码是干嘛的?这段注释的意义是什么?删除了会有什么影响? 说实话,我个人觉得这句代码真的很牛 i = 0x5f3759df - ( i >> 1 ) ,算是求平方根倒数(1/√x)算法的核心, i 被右移一位,之后与魔术常数 0x5f3759df 相减,这一步骤神奇地给出了平方根倒数的一个初始近似值,提升了计算速度🐮 我个人猜想,有可能 “what the fuck”只是赞赏这句算法,而贴出代码的同事误以为在骂领导,后台我查了一下该算法大概由上个世纪90年代的硅图公司开发出来,后来出现在John Carmark的Quake III Arena的源码中,该算法主要用于3D图形渲染和游戏开发中。 其实关于这个算法的讨论,我之前在stackoverflow上也刷
………………………………