求二进制中1的个数
来源:互联网 发布:linux vi命令日志 编辑:程序博客网 时间:2024/06/13 12:44
题目描述:
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
复习了一下原码、反码、补码的转换关系及来源,看到一个博客介绍的很详细,包括原码与补码本质上取模运算后得到的结果是相同的。
https://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html
本题的方法很巧妙,通过每次n-1再与n作与操作,其实是将最高位不变,其余位均作取反操作。
此方法为参照别人的方法:
class Solution {public: int NumberOf1(int n) { int count = 0; while(n) { n = (n-1)&n; ++count; } return count; }};
今天还练习了一下斐波那契数列,1,1,2,3,5,…简单的递归/动态规划均可解。基本题:数列第n项的取值、爬楼梯、矩形填充。
阅读全文
0 0
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制中1的个数
- 求二进制数中1的个数
- 求二进制数中 1 的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- 求二进制数中1的个数
- “求二进制数中1的个数”
- 求二进制中1 的个数
- 第七章 图(邻接矩阵和邻接表建立图并实现DFS、BFS)
- SSM环境搭建(四)
- C++函数返回多个参数
- 基础练习 回文数 (蓝桥杯)
- 12.7复习期末+project
- 求二进制中1的个数
- 周中训练笔记22
- Python学习(python2.7.10)
- 反射
- POJ-3281 Dining(最大流)
- 分布式服务化系统一致性的“最佳实干”
- 【JS小知识点】数组的相互赋值
- 原生PHP
- vld配置 应用程序正常初始化 0x0150002失败 bug解决记录