符号表学习记录

1.符号表是一种存储键值对的数据结构,支持两种操作:插入(put),即将一组新的键值对存入表中;查找(get),即根据给定的键得到相应的值。

2.符号表有以下规则:

a.每个值只对应着一个键(表中不允许存在重复的键)

b.当用例代码向表中存入的键值对和表中已有的键(及关联的值)冲突时,新的值会代替旧的值。

c.键不能为空

d.不允许有空值。

3.在含有N对键值对的基于(无序)链表的符号表中,未命中的查找和插入操作都需要N次比较。命中的查找在最坏的情况下需要N次比较。特别的,向一个空表中插入N个不同的键需要~N2/2次比较。

4.在N个键的有序数组中进行二分查找最多需要(lgN+1)次比较(无论是否成功)。

5.向大小为N的有序数组中插入一个新的元素在最坏情况下需要访问~2N次数组,因此向一个空符号表中插入N个元素在最坏情况下需要访问~N2次数组。

6.各种符号表的实现:

猜你喜欢

转载自www.cnblogs.com/yzl12666/p/9242331.html