1 Star 0 Fork 0

xiangxiang/LeetCode-NOTES

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
solution.cpp 624 Bytes
一键复制 编辑 原始数据 按行查看 历史
默然 提交于 7年前 . update all algorithms.
/* 每个数向右移1位(除以2)后,
二进制表示里的'1'的个数要么与原来相等(偶数,末位是'0'),
要么少了一个(奇数,末位是'1')。
所以在程序循环中,若计算array[i]的'1'的个数,因为之前已经计算过array[i/2],
此时只需判断array[i]的奇偶性,就可以计算array[i]的'1'的个了。
*/
class Solution {
public:
vector<int> countBits(int num)
{
vector<int> results = vector<int>(num+1, 0);
for(int i=1;i<=num;i++)
{
results[i] = results[ i >> 1 ] + (i & 1);
}
return results;
}
};
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/xiangxiang920/LeetCode-NOTES.git
git@gitee.com:xiangxiang920/LeetCode-NOTES.git
xiangxiang920
LeetCode-NOTES
LeetCode-NOTES
master

搜索帮助