【LeetCode刷题笔记-82 191:位1的个数】

【LeetCode刷题笔记-82 191:位1的个数】
今天的题目两种解法,一种是暴力运算,每一次统计一位。
但是值得记录的是第二种,n&=n-1的做法,这个算式每一次会将最低位的1置0,直到n等于为止

C++代码:

class Solution {
public:
    int hammingWeight(uint32_t n) {
        int count = 0;
		
		while(n){
			n &= (n-1);
			count++;
		} 
		return count;
    }
};

记得将count初始化为0;
LC里面声明变量是任意给值的。

上一篇:createjs 学习


下一篇:用React.js+Egg.js造*-全栈开发旅游电商应用