码迷,mamicode.com
首页 > 其他好文 > 详细

338. Counting Bits (Binary)

时间:2018-08-01 12:11:27      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:lse   solution   偶数   color   count   col   res   nbsp   bit   

这个规律找的更好,规律是,从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)

标签:lse   solution   偶数   color   count   col   res   nbsp   bit   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!