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

360建筑网站中国国家人事人才培训网证书查询

360建筑网站,中国国家人事人才培训网证书查询,苏州批量关键词优化,wordpress 添加购买按钮平日里面经常使用map这种数据结构,令人称奇的是他的访问速度为什么那么快?为什么可以通过key以接近O(1)的速度查找? 一、基础数据结构特点分析 1.1数组 查找的时间复杂度为O(1) 插入时间复杂度为O(n) 1.2链表 查找的时间复杂度为O(n) 插…

平日里面经常使用map这种数据结构,令人称奇的是他的访问速度为什么那么快?为什么可以通过key以接近O(1)的速度查找?

一、基础数据结构特点分析

1.1数组

查找的时间复杂度为O(1)

插入时间复杂度为O(n)

1.2链表

查找的时间复杂度为O(n)

插入时间复杂度为O(1)

1.3红黑树

一种平衡树,能以较低的时间复杂度进行搜索、添加和查找操作O(logn)

可以优化节点查找速度

所以如果我们能找到一种,通过数组进行范围筛选,通过链表对数据进行增删的数据结构来存储数据,那么就能够获得较快的查询速率

二、hashMap基本实现原理

2.1hash过程

将这个数据节点进行hasCode操作,获取一个hash值

2.2hash定位

hash值对数组长度取模,获取一个模值,相同模值的数据节点挂载在同一个链表上

2.3查找

获取数据的时候就将该key转成hash,计算其模值,在对应的链表上面进行顺序查找

2.4hash冲突过多的优化

什么是hash冲突?:不同的key算出了相同的hash

解决方案1(Java采用)——链地址法:相同的hash值转到一个链表,链表长度大于8转换成红黑树,红黑树规模小于6退化成链表

特点:

(1)要减少hash冲突需要很大的散列,利用率不够大

(2)默认大小为16,超过就扩充一倍

解决方案2(Python采用)——开放寻址法:算出了相同的hash值就继续往下遍历寻找第一个找到的空hash值

特点:

(1)适用于负载不大的散列,负载过大会长时间找不到空hash

(2)负载超过一定阙值就扩容,而不是满了再扩容

http://www.ds6.com.cn/news/104696.html

相关文章:

  • 苏州网站建设设计制作公司怎么样怎么创建自己的网站平台
  • 武威 网站开发百度站长之家
  • 青岛网站推广服务查域名的网址
  • 自己做网站花多少钱免费网站推广
  • 武汉b2b网站建设公司快手流量推广免费网站
  • 文做网站站长工具ip地址查询域名
  • 扬中网站建设网站底部友情链接
  • 香港做网站seo点击排名软件营销工具
  • 请人做个网站多少钱口碑营销的成功案例
  • 网站制作公司 信科网络宁波网站推广找哪家
  • 网批做衣服的网站网络营销的特点有
  • linux系统做网站seo引擎优化专员
  • 晋江模板建站如何把网站推广
  • 网站建设都有那些费用厦门百度竞价推广
  • 什么公司做网商网站的注册安全工程师
  • 杭州网站建设icp备江苏网站建站系统哪家好
  • 医疗网站跳出率百度seo优化按年收费
  • 优秀ppt作品范例天津seo推广软件
  • 网站什么做的企业邮箱申请
  • 百度医疗网站建设论坛推广怎么做
  • 网站自动更新文章手机关键词点击排名软件
  • 有什么网站可以做平面兼职南宁seo费用服务
  • 做网站简约学校网站专业seo网络推广
  • 微信网站开发国外搜索引擎网站
  • 那个网站有兼职做室内设计如何把网站推广出去
  • 房产经济人怎么做网站网盘资源大全
  • 网络公司网站首页网站优化排名哪家好
  • 网站开发的完整流程图不受限制的万能浏览器
  • wordpress占用seo搜索
  • 湖北商城网站建设网站流量