java實現Bitmap演算法
package edu.xaut.jzd;
public class Test {
int numSize = 1000;
int arraySize =(int)Math.ceil((double)numSize/32);
private int array[] = new int[arraySize];
/**
* @param args
*/
public static void main(String[] args) {
//也可以使用bitset
Test test = new Test();
test.initBitMap();
int sortArray[] = new int[]{1,4,32,2,6,9};
for(int i=0;i<sortArray.length;i++){
test.set1(sortArray[i]);
}
for(int i=0;i<test.numSize;i++){
if(test.get(i) !=0){
System.out.print((i)+" ");
}
}
}
public void initBitMap(){
for(int i=0;i<array.length;i++){
array[i] = 0;
}
}
public void set1(int pos){
array[pos>>5] = array[pos>>5] | (1 <<(31-pos% 32) ); //給相應位置1
}
public int get(int pos){
return array[pos>>5] & (1 <<(31-pos% 32 ));
}
}
相關文章
- 實現簡單的BitMap
- 演算法---BitMap演算法
- 【演算法與資料結構專場】BitMap演算法基本操作程式碼實現演算法資料結構
- 點陣圖(bitmap)原理以及實現
- laravel + redis + bitmap 實現簽到功能LaravelRedis
- KMP演算法 Java實現KMP演算法Java
- 排序演算法Java實現排序演算法Java
- 排序演算法 Java實現排序演算法Java
- 詳解BitMap演算法演算法
- BitMap演算法詳解演算法
- 排序演算法-Java實現快速排序演算法排序演算法Java
- Java中Blowfish加密演算法實現Java加密演算法
- Java Stream API:實現 Kruskal 演算法JavaAPI演算法
- java氣泡排序演算法實現Java排序演算法
- java實現字元壓縮演算法Java字元演算法
- QQ TEA加密演算法 JAVA實現加密演算法Java
- Java實現AES和RSA演算法Java演算法
- Twitter雪花演算法SnowFlake演算法的java實現演算法Java
- 【演算法】Java實現七種常用排序演算法演算法Java排序
- JDK中的BitMap實現之BitSet原始碼分析JDK原始碼
- PHP實現Bitmap的探索 - GMP擴充套件使用PHP套件
- 排序演算法:Java實現希爾排序排序演算法Java
- 10大排序演算法——Java實現排序演算法Java
- 線性表及其演算法(java實現)演算法Java
- LeetCode演算法題-Number of Boomerangs(Java實現)LeetCode演算法OOMJava
- bitMap原理及實戰
- 【資料結構與演算法】bitmap資料結構演算法
- Java實現常用加密演算法-SM4Java加密演算法
- 有向圖的基本演算法-Java實現演算法Java
- 二十、快速排序演算法——JAVA實現(遞迴)排序演算法Java遞迴
- Java實現二分查詢演算法Java演算法
- [2]十道演算法題【Java實現】演算法Java
- Redis 實戰篇:巧用Bitmap 實現億級海量資料統計Redis
- Java中使用Stream實現6種演算法教程Java演算法
- 如何在 Java 中實現 Dijkstra 最短路演算法Java演算法
- 用 Java 實現的八種常用排序演算法Java排序演算法
- 幾種排序演算法的原理以及 Java 實現排序演算法Java
- Hanlp分詞例項:Java實現TFIDF演算法HanLP分詞Java演算法
- AQS:JAVA經典之鎖實現演算法(一)AQSJava演算法