常见的数据结构包括数组、链表、栈、队列、哈希表、树、堆、图。
数据结构可以分为逻辑结构和物理结构
逻辑结构:线性与非线性
逻辑结构揭示了数据元素之间的逻辑关系。
线性数据结构:数组、链表、栈、队列、哈希表,元素之间是一对一的顺序关系。
非线性数据结构:树、堆、图、哈希表。
非线性结构可以进一步分为树形结构和网状结构。
物理结构:连续和分散
物理结构反映了数据在计算机内存中的存储方式。可分为连续空间存储(数组)和分散空间存储(链表)。物理结构从底层决定了数据的访问、更新、增删等操作方法,两种物理结构在时间效率和空间效率方面呈现出互补的特点。
所有的数据结构都是基于数组、链表或者二者的组合实现的。