leetcode Bitwise AND of Numbers Range
来源:互联网 发布:淘宝换货来回运费谁出 编辑:程序博客网 时间:2024/06/05 17:14
题目链接
不得不说。我的位操作真的不是很好。碰到位操作的题目就不会。注定不能做硬件程序员。。
思路:(是看了别人的代码才有的思路,不然我就用循环做了)
其实从m到n。。。我们可以想象,只有m和n的二进制公共前缀起作用。因为从m到n。公共前缀后面的每一位都会出现0.这样与出来的结果就是0.所以我们只要找到m,n的二进制公共前缀就好。
public class Solution { public int rangeBitwiseAnd(int m, int n) { int bitmove=0; while(m!=n) { m>>=1; n>>=1; bitmove++; } return n<<bitmove; }}
0 0
- android studio Terminal 不能输入
- MYSQL 字符串函数
- LR Error: Failed to deliver a p2p message from son to parent process, reason - communication error.
- ios-cell多行文字高度自适应
- Java日志框架研究及常见配置
- leetcode Bitwise AND of Numbers Range
- 值得推荐的C/C++框架和库
- jquery插件ztree的总结
- Java学习之通过JNI调用C/C++编写的dll链接库(图文教程)
- C++中将string按照空白字符分割的新方法
- MSSQL, MYSQL 字符串拆分
- LoadRunner 常见错误收集及解决方案
- ASP.NET MVC5 网站开发实践(一) - 项目框架
- 心灵鸡汤