bitmap
2016-05-10 11:10
274 查看
bitmap是通过1个位表示一个状态,比如:int类型有2^32个数字,即4G个数字,那么每个数字一个状态,就是2^32个bit,即512 MB。
即4G个数字(大约是4亿数字,如果是4G个整数,就是16GB大小)可以转化为512 MB大小
即4G个数字(大约是4亿数字,如果是4G个整数,就是16GB大小)可以转化为512 MB大小
#include <iostream> #include <memory.h> using namespace std; char bitmap[4] ; void add(int n) { bitmap[n/8] |= (128 >> n%8); } bool search(int n) { if(bitmap[n/8] & (128>>n%8)) return true; return false; } int main() { int n[] = {2, 5, 7, 9, 25,}; int i; memset (bitmap, 0, sizeof(bitmap)); for( i=0; i<5; i++) add(n[i]); for( i=0; i<5; i++) if(search(n[i])) cout << "find " << n[i] <<endl; return 0; }
相关文章推荐
- 导入工程时报错The import android cannot be resolved
- 导入工程时报错The import android cannot be resolved
- Maven项目中War包的打包及依赖方式
- jquery实现图片上传前本地预览功能
- TCP/IP详解(一)---入门知识
- ubuntu sublime text 3 不支持中文的解决办法
- 常用Git命令
- 查找(三):二叉查找树
- JAVA动态绑定机制
- 使用CAReplicatorLayer自定义简单指示器
- android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original
- 安卓ListView使用技巧
- TextView竖直滚动
- LeetCode 316. Remove Duplicate Letters
- 《Motion Design for iOS》(十四)
- 正则表达式
- 日常开发笔记(不定期更新)
- 关于在开发板和电脑用网线直接连接的情况下如何ping通,nfs挂载
- Maven项目中War包的打包及依赖方式
- Maven项目中War包的打包及依赖方式