[勇者闯LeetCode] 191. Number of 1 Bits
2017-06-17 21:16
393 查看
[勇者闯LeetCode] 191. Number of 1 Bits
Description
Write a function that takes an unsigned integer and returns the number of ’1’ bits it has (also known as the Hamming weight).For example, the 32-bit integer ’11’ has binary representation
00000000000000000000000000001011, so the function should return 3.
Information
Tags: Bit ManipulationDifficulty: Easy
Solution
利用n-1与
n进行“与”操作,消去
n的二进制表示的最后一个1,直到
n等于0。
C++ Code
class Solution { public: int hammingWeight(uint32_t n) { int ans = 0; while (n > 0) { ans++; n &= (n-1); } return ans; } };
相关文章推荐
- (LeetCode) 191. Number of 1 Bits
- [leetcode] 191. Number of 1 Bits
- 【Leetcode】191. Number of 1 Bits
- [Leetcode] 191. Number of 1 Bits 解题报告
- leetcode 191. Number of 1 Bits 数字中1的数量 + 位运算
- [leetcode]191. Number of 1 Bits
- leetcode-191. Number of 1 Bits
- LeetCode-191. Number of 1 Bits
- leetcode 191. number of 1 bits
- [LeetCode] 191. Number of 1 Bits
- leetcode 191. Number of 1 Bits(1的个数)(C++和Java)(无符号位)
- LeetCode 简单操作 | 191. Number of 1 Bits
- LeetCode 191. Number of 1 Bits
- Leetcode: 191. Number of 1 Bits(JAVA)
- Leetcode 191. Number of 1 Bits
- LeetCode:191. Number of 1 Bits
- LeetCode - 191. Number of 1 Bits
- LeetCode 191. Number of 1 Bits - 比特位移
- LeetCode 191. Number of 1 Bits
- LeetCode 191. Number of 1 Bits