剑指 Offer II 003. 前 n 个数字二进制中 1 的个数
给定一个非负整数 n ,请计算 0 到 n 之间的每个数字的二进制表示中 1 的个数,并输出一个数组。
来源:LeetCode
输入: n = 2 输出: [0,1,1] 解释: 0 --> 0 1 --> 1 2 --> 10
思路比较简单,就是将每个数转换成二进制字符串,再进行判断每个数的二进制形式有几个1。两个for循环就可以完成。
class Solution {
public int[] countBits(int n) {
int[] res = new int[n+1];
for(int i=0;i
关注
打赏