外部拉链法
外部拉链法技术是将散列表看作是一个链表数组。表中的每个槽要么为空,要么指向散列到该槽的表项的链表。可以通过把元素添加到链表中来解决冲突。因此,解决冲突的代价不会超过向链表中添加一个节点;无需执行再散列。外部拉链法的表项数量不受表中槽的数量限制。
例如:我们根据单词的首字母建立使用外部拉链法的散列表。假设输入的单词为Eel, Elephant, Dog, Cat, Giraffe, Elk, Zebra, Goat和Donkey。
链表中元素是按照字母顺序放置的,也就是说散列表的每个槽对应的链表为有序链表。因此,平均查找时间是链表长度的一半再加上