quake3中求1/sqrt(x)的算法源代码如下(未作任何修改):

float Q_rsqrt( float number )
{long i;float x2, y;const float threehalfs = 1.5F;x2 = number * 0.5F;y  = number;i  = * ( long * ) &y;      // evil floating point bit level hackingi  = 0x5f3759df - ( i >> 1 );               // what the fuck?y  = * ( float * ) &i;y  = y * ( threehalfs - ( x2 * y * y ) );   // 1st iteration
// y  = y * ( threehalfs - ( x2 * y * y ) );   // 2nd iteration, this can be removed

#ifndef Q3_VM
#ifdef __linux__assert( !isnan(y) ); // bk010122 - FPE?
#endif
#endifreturn y;
}

转载于:https://www.cnblogs.com/dragon2012/p/3925005.html

quake3中求1/sqrt(x)的算法源代码相关推荐

  1. 设计一个在一百万个数字中求十个最大的数算法

    具体做法是: 构建一个只有10个元素的min-heap,那么根结点就是这10个数中最小的数,然后开始遍历数组,如果遇到的数比min-heap的根结点还小,直接跳过,遇到比min-heap根结点大的数, ...

  2. 对下图所示的连通网络G,用克鲁斯卡尔(Kruskal)算法求G的最小生成树T,请写出在算法执行过程中,依次加入T的边集TE中的边。说明该算法的基本思想及贪心策略,并简要分析算法的时间复杂度

    对下图所示的连通网络G,用克鲁斯卡尔(Kruskal)算法求G的最小生成树T,请写出在算法执行过程中,依次加入T的边集TE中的 边.说明该算法的基本思想及贪心策略,并简要分析算法的时间复杂度

  3. 阶乘java_Java中求阶乘的算法

    Java中求阶乘的算法 1.一般算法: public class Factorial { public static int factorial(int n) { if (n < 0 || n ...

  4. Python实现相空间重构求关联维数——GP算法、自相关法求时间延迟tau、最近邻算法求嵌入维数m

    Python实现相空间重构求关联维数--GP算法.自相关法求时间延迟tau.最近邻算法求嵌入维数m GP算法: 若有一维时间序列为{x1,x2,-,xn},对其进行相空间重构得到高维相空间的一系列向量 ...

  5. c语言 指数 2 n,c语言中指数函数中求2的N次方输出2^n中n为常数

    求C语言 编写程序 1的1次方加2的2次方加3的3次方--一直加到n的n次方. 程序如下:#include#includevoidmain(){inti,n,sum=0;scanf("%d& ...

  6. 《ACM算法详解》— 求素数(质数)算法

    (不想做题了.....整理一些资料吧) 求素数(质数)算法 如果一个正整数只有两个因子,1和p,则p为素数 1.根据概念判断 bool isPrime(int n) {if(n < 2) ret ...

  7. c语言有参有类最小公倍数,C语言求最大公约数和最小公倍数算法

    C 语言求最大公约数和最小公倍数算法 C 语言求最大公约数和最小公倍数可以说是C 语言编程学习中一个重点和难点,它常常作为计算机专业学生参加各种考试必须要把握的内容.其算法方面除常用的辗转相除法外.还 ...

  8. 计算机科学中最重要的32个算法zz

    计算机科学中最重要的32个算法zz http://www.infoq.com/cn/news/2012/08/32-most-important-algorithms       奥地利符号计算研究所 ...

  9. 计算机科学中最重要的32个算法(转)

    奥地利符号计算研究所(Research Institute for Symbolic Computation,简称RISC)的Christoph Koutschan博士在自己的页面上发布了一篇文章,提 ...

最新文章

  1. Android 自定义Dialog 的使用
  2. 旷视科创板IPO过会:拟募资60.18亿元,阿里系为最大股东
  3. 【 FPGA 】设置输出延迟(Output Delay)
  4. [重构到模式-Chain of Responsibility Pattern]把Fizz Buzz招式重构到责任链模式
  5. 如何给PDF文件交换页面?操作方法你知道吗?
  6. collections模块之defaultdict
  7. 关于二叉树路径的遍历和处理
  8. 热点:安全问题是否能将DNS推入云服务
  9. 冒泡法排序c语言代码大全,C语言实现选择排序、冒泡排序和快速排序的代码示例...
  10. Collections.unmodifiableList方法的使用与场景
  11. 安装永中office 2009个人版 点快捷方式无法运行
  12. 如何用python做软件导出cad_使用python将cad批量导出至pdf
  13. 新能源整车控制器VCU开发过程分享
  14. 如何在vscode中暴躁的使用leetcode
  15. python简单速成,一行代码写爬虫
  16. Tair ldb(leveldb存储引擎)实现介绍
  17. Windows Shell编程-第七章.侵入Shell
  18. JR/T 0223—2021 金融数据安全 数据生命周期安全规范
  19. Windows下自动连接WiFi 脚本
  20. 穷人和富人的思维方式

热门文章

  1. freemarker空格问题
  2. idea工具修改Git路径
  3. php删除英文链接词,英语写作词汇大全:转折连接词
  4. read time out解决方法_quot;read-on-writequot; in InnoDB
  5. Problem L. Graph Theory Homework
  6. 计算机网络—三种CSMA协议
  7. [leetcode]693. 交替位二进制数
  8. c++排序算法之 快速排序
  9. 分治法 —— 折半查找(递归与非递归)
  10. 二进制转换为三进制 ——C++实现