符号表的各种实现的优缺点
使用的数据结构 | 实现 | 优点 | 缺点 |
---|---|---|---|
链表(顺序查找) | SequentialSearchST | 适用于小型问题 | 对于大型符号表很慢 |
有序数组(二分查找) | BinarySearchST | 最有的查找效率和空间需求,能够进行有序性相关的操作 | 插入操作很慢 |
二叉树查找 | BST | 实现简单,能够进行有序性相关的操作 | 没有性能上界的保证 |
平衡二叉树查找 | RedBlackBST | 最优的查找和插入效率,能够进行有序性相关的操作 | 链接需要额外的空间 |
散列表 | SeparateChainHashST |
能够快速的查找和插入常见数据类型 | 需要计算每种类型的数据的散列无法进行有序性相关的操作 |