- 支持动态更新的数据结构:
散列表、跳表、红黑树 - 对比分析:
散列表:
插入删除查找都是O(1)
优点:时间复杂度低
缺点:不能够顺序遍历,动态扩容操作以及散列函数和解决冲突的操作可能会消耗时间
适用场景:适用于那些不需要顺序遍历,数据更新不那么频繁的
跳表:
插入删除查找O(logn)
优点:能够顺序遍历
缺点:空间复杂度O(n)
适用场景:不那么在意内存空间的,需要顺序遍历和区间查找的操作
红黑树:
插入删除查找都是O(logn)
优点:中序遍历即是顺序遍历,稳定
缺点:难以实现
适用场景:频繁插入删除查找的工程应用