`
jingliankui123
  • 浏览: 104776 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

算法的Java实现

    博客分类:
  • java
阅读更多
引用:
http://www.java3z.com/cwbwebhome/article/article5/51296.html?id=3438 
public class  SimpleBloomFilter {
    private static final  int  DEFAULT_SIZE  = 14 ;
    private static final  int [] seeds =new  int []{5};
    private  BitSet bits= new  BitSet(DEFAULT_SIZE);
    private  SimpleHash[]  func = new  SimpleHash[seeds.length];
    
    public static void  main(String[] args) {
       String value  = "stone2083@yahoo.cn" ;
       SimpleBloomFilter filter = new  SimpleBloomFilter();
       System.out.println(filter.contains(value));
       filter.add(value);
       System.out.println(filter.contains(value));
   }
    
   public  SimpleBloomFilter() {
        for( int  i= 0 ; i< seeds.length; i ++ ) {
           func[i] = new  SimpleHash(DEFAULT_SIZE, seeds[i]);
       }
   }
   
   
   public void  add(String value) {
        for(SimpleHash f : func) {
           bits.set(f.hash(value),true);
       }
   }
    public boolean  contains(String value) {
        if(value ==null ) {
            return false ;
       }
        boolean  ret  = true ;
        for(SimpleHash f : func) {
           ret=ret&& bits.get(f.hash(value));
        }
        return  ret;
   }
    
    
    public static class SimpleHash {
        private int  cap;
        private int  seed;
        public  SimpleHash( int cap, int seed) {
            this.cap= cap;
            this.seed =seed;
       }
        public int hash(String value) {
            int  result=0 ;
            int  len= value.length();
            for  (int i= 0 ; i< len; i ++ ) {
               result =seed* result + value.charAt(i);
           }
            return (cap - 1 ) & result;
       }
   }
    
    
    
} 
  

 

分享到:
评论

相关推荐

    操作系统课程设计-时间片轮转算法java实现借鉴.pdf

    操作系统课程设计-时间片轮转算法Java实现借鉴 一、操作系统概述 操作系统是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本任务...

    数据挖掘算法Java实现(源码)

    本资源"数据挖掘算法Java实现(源码)"是针对数据挖掘爱好者和开发者的一份宝贵资料,它包含了多种经典的数据挖掘算法的Java实现。 1. **支持向量机(SVM)**:SVM是一种二分类模型,它的基本模型是定义在特征空间...

    祖冲之密码算法Java实现

    9. **性能优化**:虽然祖冲之算法本身已经设计得很高效,但在Java中实现时,仍需要注意内存管理和计算性能,以适应可能的大规模数据加密需求。 10. **文档编写**:为了方便其他开发者理解和使用你的实现,需要编写...

    Apriori算法java实现

    Apriori算法java实现,本人自己毕业设计用的不解释! 上次传的有人说用不了,表示很惊讶! !本人亲测能用的

    Apriori算法 java实现

    `apriori.java`是Apriori算法的Java实现文件。这个文件可能包含了以下关键部分: 1. 数据预处理:从Excel文件中读取数据,转换成项集(如商品列表)。 2. 支持度计算:定义一个函数来计算项集的支持度,这是评估项集...

    DBSCAN聚类算法java实现

    java版的DBSCAN聚类算法实现,是典型的算法思路实现,遍历未访问的所有点,如果是核心点,就新建一个簇,然后遍历其邻域内的所有点集A,不断扩展,如果簇内的点时核心点,就将其邻域所有点纳入点集A,并从点集移除已...

    SVM 算法 java 实现

    支持向量机(Support Vector Machine,简称SVM)是一种广泛应用于分类和回归分析的机器学习算法。...总的来说,Encog为Java开发者提供了一个强大且易用的SVM实现工具,使得在Java环境中应用SVM算法变得简单而高效。

    lz4压缩算法java实现-LZ4-极快的压缩算法,排序算法数据结构 最快的排序算法

    LZ4压缩算法java实现 LZ4压缩算法是lossless压缩算法,提供了高达500 MB/s每个核心的压缩速度,且可以根据多核CPU进行扩展。它具有极快的解压速度,速度可达多GB/s每个核心,通常达到多核系统中的RAM速度限制。速度...

    多边形填充算法java实现

    在给定的标题“多边形填充算法java实现”中,我们可以推断这是一个Java编程项目,它实现了对多边形内部进行填充的功能。描述中提到的“扫描线算法”是实现这一功能的常见方法,这种方法基于逐行扫描图像并处理与...

    布谷鸟算法Java实现源码

    在下载的"布谷鸟算法Java实现源码"中,`CuckooSearch`可能是主程序类,包含了上述所有关键部分的实现。你可以通过阅读源码理解各个部分的工作原理,并根据你的实际问题调整参数和策略,以适应不同的优化任务。 总的...

    G-S算法 java实现

    里面的Gs.java是算法文件。另外一个带图形界面的swing类文件可以忽略不看。 算法的输入是两个矩阵data_man 和data_woman。 data\1 里面的数据对应了男士优先的gs算法,2对应了女士优先的算法。 其中矩阵的输入代表了...

    银行家算法java实现带UI界面(修正版)

    《银行家算法Java实现带UI界面详解》 银行家算法,由荷兰计算机科学家艾兹格·迪科斯彻提出,是一种预防死锁的策略,它主要用于操作系统中资源的分配,以确保系统的安全性。该算法的核心在于预先分配一部分资源,...

    背包算法JAVA实现

    背包算法 背包算法JAVA实现 背包算法JAVA实现

    DES加密算法JAVA实现(带简单界面)

    在Java中实现DES加密,主要涉及到`javax.crypto`包中的类,如`KeyGenerator`用于生成密钥,`Cipher`用于进行加解密操作。首先,你需要生成一个DES密钥,这通常包括设定密钥长度(DES的标准长度为56位,但在Java中是...

    Dijkstra算法java实现

    在Java中实现Dijkstra算法,主要涉及以下几个步骤: 1. **初始化**:首先,创建一个图的表示,可以使用邻接矩阵或邻接表来存储节点之间的连接和权重。同时,为每个节点分配一个初始距离值,源节点设为0,其他节点设...

    银行家算法java实现源码及作业调度算法源码.zip

    银行家算法java实现源码及作业调度算法源码.zip银行家算法java实现源码及作业调度算法源码.zip银行家算法java实现源码及作业调度算法源码.zip银行家算法java实现源码及作业调度算法源码.zip银行家算法java实现源码及...

    kr iging插值算法java实现-Java代码类资源

    kr iging插值算法java实现-Java代码类资源

    DES算法java实现代码

    本资源为DES算法java实现代码 数据加密算法(Data Encryption Algorithm,DEA)是一种对称加密算法,很可能是使用最广泛的密钥系统,特别是在保护金融数据的安全中,最初开发的DEA是嵌入硬件中的。通常,自动取款机...

    算法java实现

    在这个“算法java实现”的主题中,我们将深入探讨如何使用Java语言来实现各种重要的算法。Java是一种面向对象的编程语言,以其跨平台性和强大的库支持而受到广大程序员的喜爱,尤其适合用于算法的实现。 1. **动态...

    TFIDF算法java实现

    4. **Java实现TF-IDF** - 在Java中实现TF-IDF,我们可以使用开源库如Apache Lucene或者Mallet。Lucene是一个强大的全文搜索引擎库,它提供了TF-IDF的实现。Mallet则是一个机器学习工具包,也包含了TF-IDF的计算功能...

Global site tag (gtag.js) - Google Analytics