Counting Bits 题解
来源:互联网 发布:python flask下载 编辑:程序博客网 时间:2024/05/17 12:03
Counting Bits 题解
题目描述:
Given a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num calculate the number of 1's in their binary representation and return them as an array.
链接:点击打开链接
题解:
这道题的核心是需要计算一个数二进制下的 “1” 的个数,通过观察“1,10,11,100,101,110,111·····”,我们可以发现第 i 位就是第 i/2 位加上 i%2 的值
ans[i]=ans[i/2]+(i%2);
这行代码实现了这一过程,算法中采用迭代,时间复杂度为O(n)。
代码:
class Solution {public: vector<int> countBits(int num) { vector<int> ans(num+1); ans[0]=0; for(int i=1; i<=num; i++){ans[i]=ans[i/2]+(i%2); } return ans; }};
0 0
- LeetCode题解:Counting Bits
- Counting Bits 题解
- LeetCode338. Counting Bits题解
- 【LeetCode题解】338.Counting Bits
- 338. Counting Bits【M】【leetcode题解】
- LeetCode题解——Counting Bits
- LeetCode 338.Counting Bits 题解(C++)
- LeetCode中338Counting Bits的题解
- 【动态规划】Leetcode编程题解:338. Counting Bits
- LeetCode#338 Counting Bits题解(C++版)
- Counting Bits
- Counting Bits
- Counting Bits
- Counting Bits
- Counting Bits
- Counting Bits
- Counting Bits
- Counting Bits
- NYOJ 16 矩形嵌套【dp】
- JS中如何快速获取数组中的最大值最小值
- Eclipse中常用快捷键
- 红色警报 天梯赛 (并查集)
- 为什么电子邮件发送失败?电子邮件发送失败的原因及解决方法
- Counting Bits 题解
- My learning backups
- jzoj 3886 道路维护
- Android studio安装教程
- WordPress插件Contact Form DB跨站脚本漏洞
- 插入节点闪退并且页面自动更新
- JavaScript 数据类型
- 软件测试第一节课总结
- MongoDB文档翻译-mongo Shell-使用mongo Shell帮助