当前位置: 首页 > news >正文

如何选择商城网站建设常德网站建设费用

如何选择商城网站建设,常德网站建设费用,可信赖的响应式网站,wordpress tag伪静态1.什么是布隆过滤器 布隆过滤器#xff08;Bloom Filter#xff09;是1970年由布隆(人名)提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多#xff0c;…1.什么是布隆过滤器 布隆过滤器Bloom Filter是1970年由布隆(人名)提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多缺点是有一定的误识别率和删除困难。 人话理解就是布隆过滤器是一个容器我们可以往这个容器里添加元素并且可以查询某个元素是否在容器中存在欸有人就经验的可以知道这个工作Set也可以做为什么要用布隆过滤器呢 布隆过滤器的优点 时间复杂度低增加和查询元素的时间复杂为O(N)N为哈希函数的个数通常情况比较小 保密性强布隆过滤器不存储元素本身 占用空间小如果允许存在一定的误判布隆过滤器是非常节省空间的相比其他数据结构如Set集合布隆过滤器的缺点 有点一定的误判率但是可以通过调整参数来降低 无法获取元素本身 很难删除元素可以试试自己实现一个可以删除元素的某隆过滤器 2. 布隆过滤器的使用使用场景 布隆过滤器可以告诉我们 “某样东西一定不存在或者可能存在”也就是说布隆过滤器说这个数不存在则一定不存布隆过滤器说这个数存在可能不存在误判后续会讲**利用这个判断是否存在的特点可以做很多有趣的事情。 解决Redis缓存穿透问题面试重点邮件过滤使用布隆过滤器来做邮件黑名单过滤对爬虫网址进行过滤爬过的不再爬解决新闻推荐过的不再推荐(类似抖音刷过的往下滑动不再刷到)HBase\RocksDB\LevelDB等数据库内置布隆过滤器用于判断数据是否存在可以减少数据库的IO请求 实现原理 布隆过滤器它实际上是一个很长的二进制向量和一系列随机映射函数。以Redis中的布隆过滤器实现为例Redis中的布隆过滤器底层是一个大型位数组二进制数组多个无偏hash函数。 我下面的实现是采用了二维数组的方式来实现的一个hash函数对应每一个数组这样的误判率会非常小当然每个人都有自己的实现方式学习思想即可 代码实现 1.定义接口 public interface AccessInterfaceT extends Object {void add(T t);boolean query(T t);boolean set(T t); }2.hash值方法实现 public class HashCodeT extends Object {/*** param index* param length* param t* return* 注适用于hashpool较小的时候太大了不行。计算hash值的时候会溢出当然这个问题换个对象来计算就行了这里图省事就简单点 Java有内置的大数据对象。*/public int GetHashCode(int index,int length,T t){int hashcodet.hashCode();Long hashcode1Math.round(Math.floor((hashcodeindexindex*index)%length));return hashcode1.intValue();}}过滤器实现 /*** 过滤器实现*/ public class BlloomEnityT extends Object implements AccessInterfaceT {private boolean[][] blloompool;private int length;HashCodeT Code;public BlloomEnity() {this.length100;this.blloompoolnew boolean[100][100];this.Codenew HashCodeT();}public BlloomEnity( int length) {this.blloompool new boolean[length][length];this.length length;this.Codenew HashCodeT();}Overridepublic void add(T o) {for(int i0;ithis.length;i){int kCode.GetHashCode(i1,this.length,o);this.blloompool[i][k]true;}}Overridepublic boolean query(T o) {for(int i0;ithis.length;i){int kCode.GetHashCode(i1,this.length,o);if(!this.blloompool[i][k]){return false;}}return true;}Overridepublic boolean set(T o) {if(query(o)){return false;}else{add(o);}return true;} }测试 完事儿一切对象都可存
http://www.dnsts.com.cn/news/166619.html

相关文章:

  • 阿里巴巴网站备案号安卓优化大师app下载安装
  • vs2010做网站在线网页视频抓取工具
  • 德江网站建设湖南长沙旅游攻略
  • 南京电商网站开发网片点焊机
  • 中山公众号平台商场网站建设网页设计与制作dw
  • 局门户网站的建设网站上传wordpress
  • flash网站源文件下载微信小程序云开发费用
  • 互联网 网站建设深圳品牌策划培训
  • 如何做网站吸引广告商网站建设客户资料收集清单
  • 深圳带停机坪的别墅网站怎么做推广和优化
  • wordpress迁移器杭州seo哪家好
  • 自己做的视频可以传别的网站去吗建筑工程公司名字起名大全
  • 企业网站设计的深圳公司WordPress文章百度收录插件
  • 北京定制网站开发公司浩森宇特做个外贸网站大概多少钱
  • 网站如何做h5动态页面设计wordpress验证码
  • 题材挖掘机网站怎么做html网页超链接代码
  • 杭州建站公司湖南网页
  • 做网站需要什么服务器配置网站办公室
  • wordpress网站缓存安装开发网站类型
  • 中山网站排名长沙专业网站建设怎么做
  • 联通企业网站建设电子商务网址
  • 网站建设分析案例网络组建与维护心得体会
  • 图片展示型网站模板下载公司建站
  • seo技术建站网站浏览器兼容性
  • 网站开发 集成包wordpress用户数据库
  • 英文网站建设教程大麦网的网站建设
  • 可以做网页的软件莆田seo
  • 织梦企业网站源码dede网站栏目管理如何建设
  • 广州工程建设网站杭州企业网站制作哪个好
  • 电子商务网站建设与管理期末试题咸阳高端网站建设