类似位图的数据结构BitsSet
来源:互联网 发布:lg网络电视如何使用 编辑:程序博客网 时间:2024/04/29 21:10
此数据结构最主要用途是对整数进行计数,通过将集合中每个元素指定为1,2或4个bit,以降低空间复杂率。实际使用的是int数组,通过位操作实现将1个int划分为多个包含1,2或4个bit的元素。当元素包含1个bit时退化为位图。
类似于Map,对整数进行计数。将1个int划分成32/(2^n)个包含 2^n 个bit的元素,从而实现对BitsMap的下标进行[0,2^(n+1) )的计数。
例如,n=0,则1个int包含32个元素,每个元素包含1个bit。BitsMap中对应每个元素的值为[0,2)。这就是位相量,即位图。
n=1,则1个int包含16个元素,每个元素包含2个bit。BitsMap中对应元素的值为[0,4)。
n=2,则1个int包含8个元素,每个元素包含4个bit。BitsMap中对应元素的值为[0,16)。
具体使用环境:作为集合对整数计数。例如,
1)文件中存有N个整数,N<10^5,每个整数至多出现1次,找到没有出现的整数
2)文件中存有N个整数,N<10^5,每个整数至多出现10次,找到出现的次数最多整数,或者按照出现次数排序
3)文件中存有N个整数,N<10^20,每个整数至多出现1次,对这些整数排序
可以通过构造方法实例化对象,推荐使用静态工厂方法获取对象
具体类的代码
- 类似位图的数据结构BitsSet
- 位图数据结构的运用
- 位图文件的数据结构
- 位图数据结构的
- bmp 位图的数据结构分析
- 位图数据结构
- 位图数据结构
- 【数据结构】位图
- 【数据结构】位图
- 数据结构--位图
- 数据结构:位图
- 位图数据结构的实现与应用
- matlab实现位图数据结构
- 数据结构:位图法
- 【转】数据结构:位图法
- 数据结构:位图法
- 数据结构之位图(11)
- [整理]数据结构----位图法
- iPhone SDK开发基础之UIPageControl编程
- 美食常使用香料
- android ndk 开发之 在 框架层使用 jni
- NSNotification的用法
- 《C#面向对象程序设计》新教案发布:《继承、接口与多态》和《委托及事件》
- 类似位图的数据结构BitsSet
- 一类非线形差分方程的解法(中间增量的形式改变)
- js打印
- 有效的SOA需要四种主要中间件产品的支持
- 什么是TCP/IP
- android编译过程
- java core 基础
- commons-fileupload
- 理解Linux上的内存使用