UOJ Logo tl_xujiayi的博客

博客

平方根倒数四倍速度算法

2022-03-26 14:39:46 By tl_xujiayi
float InvSqrt(float x)
{
    float xhalf = 0.5f*x;
    int i = *(int*)&x;       // get bits for floating value
    i = 0x5f3759df - (i>>1); // gives initial guess y0
    x = *(float*)&i;         // convert bits back to float
    x = x*(1.5f-xhalf*x*x);  // Newton step, repeating increases accuracy
    return x;
}

转自:https://www.zhihu.com/question/37692782/answer/73323805

评论

tl_xujiayi
有点诡异,但好用
LSY
没有那句 what the fuck 没有灵魂

发表评论

可以用@mike来提到mike这个用户,mike会被高亮显示。如果你真的想打“@”这个字符,请用“@@”。