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.

思路:数字总比[数字二进制最高位置0后的数字]的多一个1

public static int[] countBits(int num) {int len = num + 1;int[] res = new int[len];res[0] = 0;for (int i = 1; i < len; i++) {res[i] = res[Util.highBit(i)] + 1;}return res;}//将二进制的最高位置0public static int highBit(int x) {return x - (int) Math.pow(2, (int) (Math.log(x) / Math.log(2)));}

转载于:https://www.cnblogs.com/zhaihua/p/5551684.html

leetCode 338相关推荐

  1. LeetCode 231. 2的幂 LeetCode 338. 比特位计数(2进制1的个数)

    文章目录 1. 题目信息 2. 解题 拓展:求一个数n的2进制有多少个1? LeetCode 338 1. 题目信息 给定一个整数,编写一个函数来判断它是否是 2 的幂次方. 示例 1:输入: 1 输 ...

  2. Leetcode 338.比特位计数

    Time: 20190904 Type: Medium 题目描述 给定一个非负整数 num.对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回. ...

  3. leetcode 338. 比特位计数

    给定一个非负整数 num.对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回. 示例 1: 输入: 2 输出: [0,1,1] 示例 2: 输入: ...

  4. leetcode 338 比特位计数

    如果一个数i%2=1,即为奇数,即二进制中的最低位为1.我们将这个过程循环直至i为0,每一次i%2=1我们将该数的'1'数加一. 上面的方法不能做到复杂度O(n)完成所有数的的遍历.我们换成动态规划. ...

  5. [swift] LeetCode 338. Counting Bits

    Given a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num calculate the ...

  6. LeetCode 338. 比特位计数(动态规划)

    题目描述 给定一个非负整数 num.对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回. 示例 1: 输入: 2 输出: [0,1,1] 示例 2 ...

  7. LeetCode 342. 4的幂(位运算)

    文章目录 1. 题目 2. 解题 2.1 通用解法 2.2 找规律 1. 题目 给定一个整数 (32 位有符号整数),请编写一个函数来判断它是否是 4 的幂次方. 示例 1: 输入: 16 输出: t ...

  8. Leetcode各种题型题目+思路+代码(共176道题)

    文章目录 第一章:Leetcode 每日很多题 1.Leetcode-1047 删除字符串中的所有相邻重复项 2.剑指 Offer 53 - I. 在排序数组中查找数字 I 3.Leetcode704 ...

  9. Leetcode题解(超赞!!!)

    我是技术搬运工,好东西当然要和大家分享啦.原文地址 算法思想 二分查找 二分查找思想简单,但是在实现时有一些需要注意的细节: 在计算 mid 时不能使用 mid = (l + h) / 2 这种方式, ...

最新文章

  1. 02 聚类算法 - 相似度距离公式、维度灾难
  2. ZOJ POJ题目分类
  3. 分辨率到底是个什么概念?它和DPI之间是什么关系?
  4. 程序员面试金典 - 面试题 17.07. 婴儿名字(并查集)
  5. Toad9.7与Oracle11g在X86的Win7下的情况
  6. 【ElasticSearch】Es 源码之 IndicesClusterStateService 源码解读
  7. 【笔记】时间片轮转 RR 进程调度算法(Java 实现)
  8. 设计模式在游戏中的应用--模板方法(七)
  9. matlab矩阵排序sort,MATLAB数组元素的排序
  10. 获取115网盘文件列表
  11. u盘启动盘恢复计算机,怎么还原u盘启动盘为普通u盘?
  12. Ribbon负载均衡配置
  13. 2019, XII Samara Regional Intercollegiate Programming (G、H、J、K、L题解)
  14. 买服务器需要看哪些参数,如何看服务器配置
  15. 博弈论——非合作博弈 什么是纳什均衡
  16. 仿QQ弹出窗口 gggggggggggg
  17. 1005: 燃烧多少卡路里(1级) 输入仅一行。两个整数,表示体重公斤数和公里数。输出仅一行,一个整数,表示燃烧卡路里数。
  18. 股市繁荣与可持续发展
  19. 【操作教程】如何正确使用海康demo工具配置通道上线?
  20. ip切换脚本(修改ipv4中ip地址、子网掩码、默认网关)

热门文章

  1. linux端口绑定moute,Linux下网卡驱动的安装(未完结)
  2. 《致命躯壳》:不完美,却有着独特之处的轻量级魂like新作
  3. 杨清彦:《像三国》游戏3D动效制作经验分享
  4. win10更名导致MySQL无法启动服务
  5. [MySQL FAQ]系列 — 线上环境到底要不要开启query cache
  6. 优雅地关闭资源,try-with-resource语法和lombok@Cleanup
  7. 2 -13 作业需求
  8. SpringBoot 中常用注解@PathVaribale/@RequestParam/@GetMapping介绍
  9. Plupload上传插件中文文档
  10. U盘文件名称变成乱码的解决方法