zoukankan      html  css  js  c++  java
  • [LeetCode]Number of 1 Bits

    Number of 1 Bits

    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.

    Credits:
    Special thanks to @ts for adding this problem and creating all test cases.

    有个简单的规律, Wegner (1960)发现的。利用x和x-1之间的关系。

     1 class Solution {
     2 public:
     3     int hammingWeight(uint32_t n) {
     4         int result = 0;
     5         while(n)
     6         {
     7             n=n&(n-1);
     8             result++;
     9         }
    10         return result;
    11     }
    12 };
  • 相关阅读:
    c++作业2 9.22
    c++作业1 9.22
    c++练习题2
    c++练习题1
    10.10作业3
    10.10作业2
    10.10作业 1
    9.22作业5
    9.22作业4
    9.22zuo
  • 原文地址:https://www.cnblogs.com/Sean-le/p/4782488.html
Copyright © 2011-2022 走看看