• 什么是散列表?


    ①为什么要用散列表?

    数组的特点是:寻址容易,插入和删除困难;

    链表的特点是:寻址困难,插入和删除容易;

    那么能不能综合两者的特性,做出一种寻址容易,插入和删除也容易的数据结构?答案是肯定的,这就是我们要了解的散列表,也叫哈希表

    ②什么是散列表?

    散列表也叫hash表 ,是根据关键码值而进行直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射也叫散列函数,存放记录的数组叫散列表。

    给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则成表M为Hash表,函数f(key)为哈希函数。

     ③散列表有哪些特点?

    HashMap具有优秀的查找性能。根据key找到value,性能最好的算法!(没有之一)。无论数据多少,查找方法的性能始终如一!为了实现根据key告诉找到value,散列表提供了高性能查找算法。利用散列数组算法进行散列查找,性能很好。无论数据量有多少,都会在一个固定的时间,找回结果!甚至是在亿级别数据量上进行查找!凡是软件中需要查找根据key查找到value时,一定使用散列表。

    ④使用散列表的注意事项:

    ①key-value成对数据添加到散列表

    ②key不可以重复,value可以重复

    ③key-value规定为一个条目(Entry)

     ④散列表中散列数组的大小称为容量

    ⑤key-value数量称为size

    ⑥size/容量称为加载因子,要小于75%,如果大于75%,会自动扩容

    ⑦自动扩容会影响put添加性能,可以事先通过设置初始容量,提高put的性能

    ⑧散列表的默认初始容量是16,默认加载因子是75%,建议不要修改加载因子

     

  • 相关阅读:
    循环的中断
    创建.NET应用程序所经历的步骤
    完整的开发一个ContentProvider步骤
    Perl 基于OOP的数据库链接(增删改查)
    Perl 基于OOP的数据库链接(优化)
    Perl 基于OOP的数据库链接
    Perl oop链接数据库
    Perl oop研究
    PythonStudy——内存管理机制 Memory management mechanism
    博客园美化——Design by Venti
  • 原文地址:https://www.cnblogs.com/baxianhua/p/9244769.html
Copyright © 2020-2023  润新知