数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。
按照数据的逻辑结构可分为集合、线性结构、树形结构、图形结构
按照数据的物理结构可分为顺序、链接、索引、散列等多种
常见的数据结构有数组、栈、队列、链表、二叉数、红黑树、234树、哈希表、堆、图
数组插入速度快;查找慢、删除慢,大小固定
有序数组比无序的数组查找快,删除和插入慢,大小固定
栈提供后进先出方式的存取,存取其它项很慢
队列提供先进先出方式的存取,存取其它项很慢
链表插入删除快,查找慢
二叉树如果树保持平衡 则查找、插入、删除都快,但删除算法复杂
红黑树查找、插入、删除都快,树总是平衡的,但算法复杂
234树查找、插入、删除都快,树总是平衡的,类似的树对磁盘存储有用,但算法复杂
哈希表如果已知关键字则存取极快,插入快;但删除慢,不知道关键字则存取很慢,对存储空间使用不充分
堆插入、删除快,对最大数据项的存取很快,但对其他数据项存取慢
图是对现实世界建模,有些算法慢且复杂