位运算代替乘除法
来源:互联网 发布:项羽武力知乎 编辑:程序博客网 时间:2024/04/27 23:31
在所有的运算中,位运算是最为高效的。因此,可以尝试使用位运算代替部分算术运算,来提高系统的运行速度。最典型的就是对于整数的乘除运算优化。
使用算术运算的实现:
<span style="white-space:pre"></span>long a = 100;<span style="white-space:pre"></span>for (int i = 0; i < 100000000; i++) {a *= 2;a /= 2;}将循环体中的乘除运算改为等价的位运算,如下:
<span></span>long a = 100;<span></span>for (int i = 0; i < 100000000; i++) {a <<= 2;a >>= 2;}两端代码执行了完全相同的功能,在每次循环中,都将整数乘以2,并除以2.在这若干次循环中,第一段代码相对耗时141ms,而第二段使用位运算的代码相对耗时68ms。
0 0
- 位运算代替乘除法
- C/C++ 移位运算代替乘除法
- 使用位运算加速乘除法运算
- 用位运算来代替乘法、除法以及取模
- 计算机基本运算(乘除法)
- 位运算除法 - frisbee
- 算法学习 - 递归与非递归,位运算与乘除法速度比较
- 用位运算来代替乘法、除法和取余的方式
- js浮点乘除法运算方法
- 用位操作符实现乘除法加减法
- 不用/,*,mod乘、除、取模运算的除法
- C/C++中移位实现乘除法运算
- C/C++中移位实现乘除法运算
- C/C++中移位实现乘除法运算
- C/C++中移位实现乘除法运算
- 使用移位运算和加减法实现乘除法
- C语言大数运算-乘除法篇
- 乘法/除法 转移位运算符
- 安卓开发——判断应用是否具有某种权限
- xml解析性能比较
- IOS的基本控件的使用-定时器和视图移动
- Mac 删除当前目录下所有.DS_Store文件
- 索引压缩学习总结
- 位运算代替乘除法
- java1.8 10大新特性
- spring-boot 配置mongoDB连接,保存、查找、统计操作
- javascript实现闪烁
- Date、String、Calendar类型之间的转化
- 新建sidchangedcomponent中的一些问题
- viewsub的简单解释
- PowerShell 远程文件传输 8
- android 常用的 十六进制 透明度