zoukankan      html  css  js  c++  java
  • 数据结构-哈希表(散列表)

    哈希表 是唯一一个专用于集合的数据结构。可以以常量的平均时间实现插入,删除和查找

    哈希表的时间复杂度是 O(1)

    哈希表的思想是 用一个与集合差不多大小的数组来存储这个集合,将数据元素的关键字映射的数组的下标上面,这个映射我们称之为 散列函数   数组称之为 散列表,查找数据的时候,根据被查找的关键字找到存储数据元素的地址,从而获取元素

     散列函数的应用带来一个比较复杂的问题:;

    因为散列函数的定义域范围比值域大 导致2个或者更多的数据元素可能会被映射到同一个位置  称为 冲突或者碰撞。这种情况是不可避免的。因此 实现哈希表 二个基本的问题是

    1如何设计散列函数 

    2如何解决碰撞问题

    解决哈希碰撞的几种方法:

    1:开放地址法

    2:在哈希法  C# hashtable

    3: 链地址法  C#  dictionary

    4:建立一个公共溢出区

  • 相关阅读:
    public/private/protected的具体区别
    解决密码自动填充的问题
    tp导出excel
    好久没更了,确实太忙了--dedecms篇
    解决css的float父div没有高度
    随笔
    总结最近写的h5项目
    ajax删除当前行
    开发时常遇到的小问题
    js处理时间戳
  • 原文地址:https://www.cnblogs.com/burg-xun/p/11735360.html
Copyright © 2011-2022 走看看