Hashcode的原理

1.Hashcode底层是散列表:顺序表+链表。
2.特点:添加快,按照内容查询快。
3..Hashcode添加的原理:
(1)利用.hashcode()方法计算哈希码。
(2)利用哈希码来确定存储位置
(3)如果,链表中没有元素,就直接添加,如果存储位置处已有元素,利用equals判断是否有相同的元素,如果没有就添加,(这种情况称为冲突)。如果有,为保证唯一性,就不添加了。
4哈希码的计算原理:
(1)对于整数类型的数据,就直接返回该整数
(2)对于其他的基本的数据类型都用不同的处理类型,尽量保证不同的数会计算出不同的哈希码。
5.哈希表的高效率就来自于不同数据对应不同的存储位置,所以要尽量保证顺序表长度,大于数据的个数。
(1)装填因子:数据的个数/顺序表长度.Java中的装填因子为0.75.

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值