leetcode338
2016-07-20 14:41
218 查看
对于0-7
000-----ve[0]=0
001 ----1的个数取决于1%2+ve[0]
010-----1的个数取决于2%2+ve[1]
011-----1的个数取决于3%2+ve[1]
100-----1的个数取决于4%2+ve[2]
101-----1的个数取决于5%2+ve[2]
110-----1的个数取决于6%2+ve[3]
111-----1的个数取决于7%2+ve[3]
从低位考虑的话,除了最低位外的1的个数位ve[i>>1],其中i>>1可以提前算出来,再加上最低位的1的个数就可以得出i的二进制1的个数了
代码如下:
000-----ve[0]=0
001 ----1的个数取决于1%2+ve[0]
010-----1的个数取决于2%2+ve[1]
011-----1的个数取决于3%2+ve[1]
100-----1的个数取决于4%2+ve[2]
101-----1的个数取决于5%2+ve[2]
110-----1的个数取决于6%2+ve[3]
111-----1的个数取决于7%2+ve[3]
从低位考虑的话,除了最低位外的1的个数位ve[i>>1],其中i>>1可以提前算出来,再加上最低位的1的个数就可以得出i的二进制1的个数了
代码如下:
class Solution { public: vector<int> countBits(int num) { int i; vector<int>ve(num+1,0); for(i=0;i<=num;i++) ve[i]=ve[i>>1]+i%2; return ve; } };
相关文章推荐
- jquery获得下拉列表选中值和文本
- Tegra TX1 安装配置 + caffe run
- Codeforces-699A Launch of Collider
- 服务器微信支付接口笔记-(与app端对接)
- 旋转的太极图
- R语言-绘制饼图-点击链接加入群【农产品一体化解决方案】:https://jq.qq.com/?_wv=1027&k=49BAREK
- 数据类型
- HeadFirstJava——14_数据结构
- 二叉搜索树
- 选择排序
- iOS-Core Animation 核心动画高级编程/5-变换
- 【python-mysql】在ubuntu下安装python-mysql环境
- HttpHandler和ashx要实现IRequiresSessionState接口才能访问Session信息(转载)
- Mysql 主键知识
- hdu5724 Chess(博弈)
- HDU 5723 Abandoned country 多校第一场
- 求两个集合的交集以及求两个有序数组并集的第k小元素
- iOS-Core Animation 核心动画高级编程/4-视觉效果
- MYSQL中root用户忘记密码
- 【那些年遇到过的面试题】pthread_mutex