首页 > 其他 > 详细

338. Counting Bits (Binary)

时间:2018-08-01 10:48:14      阅读:167      评论:0      收藏:0      [点我收藏+]

这个规律找的更好,规律是,从1开始,遇到偶数时,其1的个数和该偶数除以2得到的数字的1的个数相同,遇到奇数时,其1的个数等于该奇数除以2得到的数字的1的个数再加1

 

 

 1 class Solution {
 2     public int[] countBits(int num) {
 3         int[] res = new int[num + 1];
 4         res[0] = 0;
 5         for(int i = 1; i <= num; i++) {  //注意是 <=
 6             if(i % 2 == 0 ) {
 7                 res[i] = res[i / 2];
 8             }else {
 9                 res[i] = res[i / 2] + 1;
10             }
11         }
12        return res; 
13     }
14 }

 

338. Counting Bits (Binary)

原文:https://www.cnblogs.com/goPanama/p/9399137.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!