[Leetcode 201, Medium] Bitwise AND of Numbers Range
2015-05-04 10:45
453 查看
Problem:
Given a range [m, n] where 0 <= m <= n <= 2147483647, return the bitwise AND of all numbers in this range, inclusive.
For example, given the range [5, 7], you should return 4.
Analysis:
Solutions:
C++:
Python:
Given a range [m, n] where 0 <= m <= n <= 2147483647, return the bitwise AND of all numbers in this range, inclusive.
For example, given the range [5, 7], you should return 4.
Analysis:
Solutions:
C++:
int rangeBitwiseAnd(int m, int n) { if(m == n) return m; unsigned int m_temp = m; unsigned int num_digits = 0; while(m_temp != 0) { ++num_digits; m_temp /= 2; } unsigned int new_number = 1; for(int i = 0; i < num_digits; ++i) new_number *= 2; if(new_number <= n) return 0; unsigned int result = m; for(unsigned int index = m + 1; index <= n; ++index) result &= index; return int(result); }Java:
Python:
相关文章推荐
- [Leetcode 201, medium] Bitwise AND of Numbers Range
- Java for LeetCode 201 Bitwise AND of Numbers Range
- [LeetCode 201] Bitwise AND of Numbers Range
- LeetCode 201-Bitwise AND of Numbers Range
- leetcode 201: Bitwise AND of Numbers Range
- LeetCode 201 Bitwise AND of Numbers Range (位运算)
- Leetcode-201- Bitwise AND of Numbers Range
- LeetCode 201 Bitwise AND of Numbers Range
- LeetCode201——Bitwise AND of Numbers Range
- [leetcode][201]. Bitwise AND of Numbers Range
- LeetCode 201 Bitwise AND of Numbers Range 位运算 难度:0
- Leetcode 201 Bitwise AND of Numbers Range 区间内整数按位与
- Leetcode 201 Bitwise AND of Numbers Range
- 【LeetCode-面试算法经典-Java实现】【201-Bitwise AND of Numbers Range(范围数位与结果)】
- Bitwise AND of Numbers Range - LeetCode 201
- LeetCode(201) Bitwise AND of Numbers Range
- Leetcode 201 Bitwise AND of Numbers Range
- LeetCode201--Bitwise AND of Numbers Range
- leetCode191/201/202/136 -Number of 1 Bits/Bitwise AND of Numbers Range/Happy Number/Single Number
- LeetCode(201) Bitwise AND of Numbers Range