数据结构
00 min
2024-4-23

数据结构分类

常见的数据结构包括数组、链表、栈、队列、哈希表、树、堆、图,它们可以从“逻辑结构”和“物理结构”这两个维度进行分类。

逻辑结构:线性和非线性

逻辑结构揭示了数据元素之间的逻辑关系
  • 线性数据结构:数组、链表、栈、队列、哈希表。(元素之间是一一对应关系)
  • 非线性数据结构:
    • 树形结构:树、堆、图、哈希表。(元素之间是一对多关系)
    • 网状结构:图。(元素之间是多对多关系)
notion image
在数组和链表中,数据按照一定顺序排列,体现了数据之间的线性关系;而在树中,数据从顶部向下按层次排列,表现出“祖先”与“后代”之间的派生关系;图则由节点和边构成,反映了复杂的网络关系。

物理结构:连续与分散

内存是所有程序的共享资源,当某块内存被某个程序占用时,则无法被其他程序同时使用了,因此在数据结构与算法设计中,内存资源是一个重要的考虑因素。而物理结构就是反映数据在内存中的存储方法,可分为连续空间存储(数组)和分散空间存储(链表)。物理结构从底层决定了数据的访问、更新、增删等操作方法,两种物理结构在时间效率和空间效率方面呈现出互补的特点。
notion image