Counting Bits — Leetcode #338

给定num, 计算从0到num闭区间内每个数字的二进制中1的个数

朴素的思路是枚举,然后对每个数进行计算(网上有很多代码,这里不再罗列)

 

看到一种新的思路,利用分治法,   最终的结果 = (将最后一位去掉的结果)+ (最后一位是否是1)

代码如下:

可对其引入记忆化,最终代码

 

One thought on “Counting Bits — Leetcode #338

发表评论