C++ LeeCode 比特位计数
Posted 梦之海岛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ LeeCode 比特位计数相关的知识,希望对你有一定的参考价值。
一、题目
二、代码
class Solution
public:
vector<int> countBits(int n)
vector<int> num;
for(int i=0;i<=n;i++)//遍历[0,n],计算每个值对应二进制1的个数
num.push_back(countOne(i));
return num;
public:
int countOne(int x)//计算当前十进制数转换为二进制后1的个数
if (x==0) return 0;
else if (x==1) return 1;
else if(x/2>0&&x/2<1)//如果当前为最后的商时
return 1;
else
return countOne(x/2) + x%2;
;
以上是关于C++ LeeCode 比特位计数的主要内容,如果未能解决你的问题,请参考以下文章