一、数据结构的概述。
数组 优点:插入块,如果知道下标可以非常快地存取。 缺点:查找慢,删除慢,大小固定。
有序数组 优点:比无序数组查找快。 缺点:删除和插入慢,大小固定。
栈 优点:提供后进先出的存取。 缺点:存取其他项很慢。
队列 优点:提供先进先出方式的存取。 缺点:存取其他项很慢。
链表 优点:插入块,删除快。 缺点:查找慢。
二叉树 优点:查找,插入,删除都快(如果树保持平衡)。 缺点:删除算法复杂。
红-黑树 优点:查找,插入,删除都快。树总是平衡的。 缺点:算法复杂。
2-3-4树 优点:查找,插入,删除都快。树总是平衡的。类似的树对磁盘存储有用。 缺点:算法复杂。
哈希表 优点:如果关键字已知则存取极快。插入块。 缺点:删除慢,如果不知道关键字这存取很慢,对存储空间使用不充分。
堆 优点:插入快,删除快,对最大数据项的存取很快。 缺点:对其他数据项存取慢。
图 优点:对现实世界建模。 缺点:有些算法慢且复杂。