目录

算法四大基础数据结构

【算法】四大基础数据结构

[https://csdnimg.cn/release/blogv2/dist/pc/img/activeVector.png 王者杯·14天创作挑战营·第5期 10w+人浏览 917人参与

https://csdnimg.cn/release/blogv2/dist/pc/img/arrowright-line-White.png]( )

所有复杂集合和算法,最终都可以追溯到数组、链表、树、图这四大类

🔹 四大基础数据结构

  1. 数组(Array)

    • 固定长度、连续内存存储。
    • Java 中:int[], String[]
    • 演变:字符串、动态数组(ArrayList)、哈希表(桶)、堆(完全二叉树用数组实现)。
  2. 链表(Linked List)

    • 节点 + 指针,顺序存储。
    • Java 中:LinkedListConcurrentLinkedQueue
    • 演变:栈、队列、跳表、哈希表冲突链。
  3. 树(Tree)

    • 层次结构,父子节点关系。
    • Java 中:TreeMapTreeSet(底层红黑树)。
    • 演变:二叉树 → 平衡树(AVL/红黑树) → B树/B+树(数据库索引) → Trie(前缀树)。
  4. 图(Graph)

    • 顶点 + 边,用邻接表 / 邻接矩阵存储。
    • Java 没有直接内置图结构,常用集合封装实现。
    • 演变:社交网络、最短路、网络流等算法应用。

🔹 演变关系(简化版)

数组 → 字符串、哈希表、堆
链表 → 栈、队列、跳表、哈希表冲突链
树   → 二叉树 → 平衡树(AVL/红黑树) → B树/B+树 → Trie
图   → 基于邻接表/邻接矩阵,结合树和链表