/** * 数据结构的特性 ********************************************************************************************** ********************************************************************************************** 数据结构 优点 缺点 ********************************************************************************************** * 数组 插入快,知道下标可以很快的进行存取 查找慢,删除慢,大小固定 * 有序数组 比无序数组查找快 删除和插入慢,大小固定 * 栈 后进先出 存取其他项慢 * 队列 先进先出 存取其他项慢 * 链表 插入快,删除快 查找慢 * 二叉树 查找,插入,删除都快(若保持树平衡) 删除算法复杂 * 红黑树 查找,插入,删除都快。树总是保持平衡。 算法复杂 * 2-3-4树 同红黑树。类似树对磁盘存储有用。 算法复杂 * 哈希表 如果关键字已知则存取极快,插入快。 删除慢,若关键字未知,则存取慢,对存储空间使用不充分。 * 堆 插入删除快,对最大数据项的存取很快。 对其他数据项存取慢。 * 图 对现实世界建模。 有些算法慢且复杂。 ********************************************************************************************** ********************************************************************************************** *除了数组之外,其他都可以被认为是抽象数据结构(ADT) *对大多数据结构,通常的操作算法有: * 1.插入一条新数据 * 2.寻找某一特定的数据项 * 3.删除某一特定的数据项 * 4.迭代各个数据项以便显示或其他操作 * 5.排序 * 6.递归 */