求int型数据在内存中存储时1的个数
来源:互联网 发布:时序性数据库 编辑:程序博客网 时间:2024/06/05 22:47
题目描述:
输入一个int型数据,计算出该int型数据在内存中存储时1的个数。
知识点: 字符串,查找
输入: 输入一个整数(int类型)
输出: 该数转换成2进制后1的个数
样例输入: 5
样例输出: 2
思路:
该题要考虑全面,正整数、0、负整数三种情况。
因为0、正整数在内存中存储方式简单,但对于负整数,其存储方式为补码,求解起来比较困难。
这种思路其实已经把自己困住了。
好的思路是,对于输入的整型数,在内存中的形式已经形成。只需要对每一位进行判断即可。
其中,算术移位运算符是<<和>>,对于最高/低位做补0操作。
代码:
#include <iostream>using namespace std;int main(){int num, count = 0;cin >> num;for (int i = 0; i < 32; i++){if (num & 1)count++;num = num >> 1; // num >>= 1;}cout << count;return 0;}得分运行时间内存复杂度最大嵌套深度98(100)16ms2072KB33
0 0
- 求int型数据在内存中存储时1的个数
- 【oj1947】 求int型数据在内存中存储时1的个数
- 求int型数据在内存中存储时1的个数 (十进制转二进制)
- 【华为OJ】求int型数据在内存中存储时1的个数
- 求int型数据在内存中存储时1的个数
- 求int型数据在内存中存储时1的个数
- 求int型数据在内存中存储时1的个数
- 求int型数据在内存中存储时1的个数(java)
- 求int型数据在内存中存储时1的个数
- 求int型数据在内存中存储时1的个数
- 求int型数据在内存中存储时1的个数
- 求int型数据在内存中存储时1的个数
- 【华为OJ】【015-求int型数据在内存中存储时1的个数】
- 【华为OJ】【041-求int型数据在内存中存储时1的个数】
- 华为OJ——求int型数据在内存中存储时1的个数
- 【c++程序】求int型数据在内存中存储时1的个数
- 华为OJ 初级:求int型数据在内存中存储时1的个数
- 华为机试---求int型数据在内存中存储时1的个数
- 16. 3Sum Closest
- Windows下的服务控制管理器(SCM)
- Java 二叉查找树转化为排序的循环双链表
- nyoj248
- ZooKeeper Watch Java API浅析getData
- 求int型数据在内存中存储时1的个数
- redhat学习笔记
- Python MySQLdb 使用utf-8 编码插入中文数据
- onBackPressed:Can not perform this action after onSaveInstanceState
- c#处理json数据最好的方式
- Cocos2d-x笔记记忆整理Day5
- 在C++中使用sizeof
- opencv从文件中批量读取图像
- Oracle使用Scott用户登录