首页 > 代码库 > 算法6-2:解决哈系冲突之独立链表

算法6-2:解决哈系冲突之独立链表

独立链表是解决哈希冲突的一种办法。它的基本思想就是将哈希值相互冲突的几个对象放到一个链表中。


代码

public class HashST<Key, Value> {
    private static class Node {
        Object key; // 由于无法创建泛型数组,只能将对象设置为Object类
        Object value;
        Node next;
 
        public Node(Object key, Object value, Node next) {
            this.key = key;
            this.value = http://www.mamicode.com/value;>

性能

性能和M有关,M就是链表的数量。如果M过大,那么内存中就会有很多空的链表,如果M太小,那么每条链表就会很长,造成性能变差。所以,M一般取N/5,N就是关键字的数量。