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

电商网站怎样优化济宁seo优化公司

电商网站怎样优化,济宁seo优化公司,幼儿园主题网络图设计图,wordpress 禁止头像HashMap源码介绍 下面并非完整的源码,主要简单了解其流程。 1. 基本成员变量 哈希桶/开散列,链地址法/开链法是由:数组 链表(单链表) 红黑树(当数组长度>64 && 链表长度>8以后,链表变成红黑树&#xf…

HashMap源码介绍

下面并非完整的源码,主要简单了解其流程。

1. 基本成员变量

  • 哈希桶/开散列,链地址法/开链法是由:数组 + 链表(单链表) + 红黑树(当数组长度>=64 && 链表长度>=8以后,链表变成红黑树,树化和解树化)
  • java 会在冲突链表长度大于一定阈值后(当数组长度>=64 && 链表长度>=8以后),将链表转变为搜索树(红黑树)

2. 构造方法

  • 当调用不带参数的构造方法时,默认是没有分配数组大小的。但第一次put的时候,数组大小分配为了默认的16(put流程中有讲到)
  • 当调用带一个参数的构造方法时,其实内部调用了带两个参数的构造方法。

 带有两个参数的构造方法:

实现Map接口的整体集合给到HashMap,来进行构造map(用的比较少)

3. put方法的流程

前提:调用的是不带参数的构造方法

第一次put的流程:

  1. 先计算哈希值,计算哈希值的时候,右移和异或(^),是为了得到更均匀的数字。
  2. 判断数组是否为空,为空数组大小分配为默认的16
  3. 计算在数组中的位置,判断该位置是否为空,为空直接插入。不为空走下面介绍的代码。

注意:

  • 这里计算数组位置下标的方式 (n-1)&hash 是 等价于 key%len 。前提是n必须是2 的次幂
  • HashMap一般会保证数组的容量是 2的某个次幂

计算的数组位置不为空:

  1. 先判断是否为红黑树,是,按照红黑树的方式插入;不是走下一步
  2. 在该位置进行尾插,每次尾插后判断该链表是否要树化操作

4. get方法的流程

  • get方法流程与put方法流程类似,可自行查看源码。
  • 注意:get方法,存在解树化操作


好啦Y(^o^)Y,本节内容到此就结束了。下一篇内容一定会火速更新!!!

后续还会持续更新数据结构与算法方面的内容,还请大家多多关注本up,第一时间获取新鲜的知识。

如果觉得文章不错,别忘了一键三连哟!

http://www.dtcms.com/wzjs/289200.html

相关文章:

  • 西安微信商城网站设计网络营销公司怎么注册
  • 济南网站建设 泉诺网站建站开发
  • 网站后台添加新闻免费外链工具
  • 福建网站制作深圳整合营销
  • 怎么依赖网站开发app网站建设报价方案
  • 免费b2b网站做推广域名注册新网
  • 免费软件app大全seo新闻
  • 做网站怎样实现网上支付厦门人才网个人版
  • 有什么做设计接任务的网站网站设计模板
  • 余姚有专业做网站的吗营销网站建设的因素
  • 怎么建设网站赚钱5151app是交友软件么
  • 个人手机版网站建设百度商家
  • 西安 医疗网站建设百度网站优化方案
  • 新疆建设兵团职改办网站百度怎么找人工客服
  • wordpress专题超级优化大师下载
  • 江门网站制作建设北京seo服务
  • 企业网站推广营销淘宝客推广有效果吗
  • 工信部网站备案登陆nba最新排名公布
  • 电子商务网站建设方案今日新闻国际最新消息
  • 深圳做步步高的公司网站佛山百度推广公司
  • 有一个网站是做釆购的是什么网企业查询官网入口
  • 上海崇明建设镇政府网站无限制访问国外的浏览器
  • 如何做免费音乐网站免费推广
  • 宁海有做网站的吗北京做网站推广
  • html网站标题怎么做的关键词快速排名平台
  • dede重工蓝色企业免费网站模板上海关键词优化报价
  • 哪些网站专做自媒体的自动点击器永久免费版
  • 效果图素材网站百度网盘人工客服电话
  • 电子商务网站建设答案济南seo关键词排名工具
  • 实施网站推广的最终目的下载百度app最新版