Hash Table --Review

1、定义三要素:
关键值Key-Value,哈希/散列函数Hash-Function(Reflection),映射后的地址/散列表

2、重要子概念
冲突 happens when 关键值key1!=key2 and F(key1)==F(key2)
装真因子 a = 已装入hash-table元素个数/hash-table长度

3、查找性能相关因素:

  A、 散列函数(越均匀越好);
      常用构造方法:
         a.直接定址,如线性取址
         b.数字分析法
         c.随机数法,效率看RP。。
         d.取模法
         e.平方取中法

   B、处理冲突的方法;
            a.开放未用的地址(线性/2次/随机数法)
            b.再散列法(增加时间开销)
            c.链地址法(像链表样。)
            d.建立公共溢出区

   C、散列表的装填因子。
         过大更容易造成冲突,过小使用效率也下来了

你可能感兴趣的:(C++,c,F#,C#)