位运算——用位存储40亿个40亿以内的整数
来源:互联网 发布:手机淘宝有什么活动 编辑:程序博客网 时间:2024/05/22 19:27
http://www.cnblogs.com/steven_oyj/archive/2010/05/23/1741975.html
腾讯面试题:位运算——用位存储40亿个40亿以内的整数
一、题目
1: #include <iostream>
2: using namespace std;
3:
4: typedef unsigned int Bit32; // 能表示42亿+的无符号整数
5:
6: const Bit32 maxLen=125000001; //数组长度,0-40亿
7: const Bit32 thirtytwo=32;
8:
9: void createArray(Bit32 *&arr)
10: {
11: arr=new Bit32[maxLen];
12: memset(arr,(Bit32)0,sizeof(arr));
13: }
14:
15: bool setBit(Bit32 *arr,Bit32 num)
16: {
17: if(((arr[num/thirtytwo])&(1<<(thirtytwo-num%thirtytwo-1)))==0)
18: {
19: arr[num/thirtytwo]|=1<<(thirtytwo-num%thirtytwo-1);
20: return true;
21: }
22: else
23: {
24: return false;
25: }
26: }
27:
28: int main()
29: {
30: Bit32 *s;
31: createArray(s);
32: if(!setBit(s,5))
33: {
34: cout<<"标记失败"<<endl;
35: }
36: if(!setBit(s,64))
37: {
38: cout<<"标记失败"<<endl;
39: }
40: if(!setBit(s,1))
41: {
42: cout<<"标记失败"<<endl;
43: }
44:
45: return 0;
46: }
二、位运算总结复习
1、2的n次方对应的十进制数字范围
位数n2的n次方十进制数值对应的数量级特殊含义说明01个 12个 24个 38个 416十 532十 664十 7128百 8256百 9512百 101024千 112048千 124096千 138192千 1416384万 1532768万 1665536万 17131072十万 18262144十万 19524288十万 201048576百万 212097152百万 224194304百万 238388608百万 2416777216千万 2533554432千万 2667108864千万 27134217728亿 28268435456亿 29536870912亿 301073741824十亿 312147482648十亿 324294967296十亿 0 0
- 位运算——用位存储40亿个40亿以内的整数
- 腾讯面试题;还是用位运算的;用位存储40亿个40亿以内的整数..;
- 二分查找位运算——32位整数中寻找第一个为1的位
- 二分查找位运算——32位整数中寻找第一个为1的位
- 2个整数的平均值-位运算
- 位运算求2个整数的平均值原理
- 给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中的32位整数
- 给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中的32位整数。
- 在一个包含40亿个随机排列的32位整数的顺序文件中(注意随机排序),找出一个不再文件中的32位整数
- 位运算-互换2个整数值
- 《编程珠玑》第二章三个问题A---查找40亿个32位整数中缺失的某个整数
- 用位运算实现两个整数的加减乘除运算
- 用位运算实现两个整数的加减乘除运算
- 用位运算实现两个整数的加减乘除运算
- 用位运算实现整数的加减乘除运算
- 用位运算实现两个整数的加减乘除运算
- 用位运算实现两个整数的加减乘除运算
- 用位运算实现两个整数的加减乘除运算
- Sharepoint 轻量化应用构建之熟悉Sharepoint Designer 2013!
- a标签加入单击事件 屏蔽href跳转页面
- json get请求 img src 带 中文 解决
- 转载自大牛的博文-解决大批量插入数据到数据库中的问题
- 内容提供器(Content Provider)--跨程序共享数据
- 位运算——用位存储40亿个40亿以内的整数
- 网络编程---Socket编程
- 【HDU 5584】 LCM Walk(逆推)——2015ACM/ICPC亚洲区上海站
- 学习java的个人经验!
- SQL查询相关技术-6.SQL操作(自选设置条件)
- 【数据结构和算法05】 红-黑树(看完包懂~)
- 面试题5-从尾到头打印链表
- 用Xcode自带的svn搭建本地SVN服务器
- ListView中的CheckBox全选反选