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

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

🔹 四大基础数据结构

  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
图   → 基于邻接表/邻接矩阵,结合树和链表
相关推荐
SleepyWhite0014 分钟前
代码随想录Day61|Floyd 算法精讲、A * 算法精讲
算法·floyd算法·astar算法
Miraitowa_cheems6 分钟前
LeetCode算法日记 - Day 84: 乘积为正数的最长子数组长度
数据结构·算法·leetcode·贪心算法·线性回归·深度优先·动态规划
雾岛听蓝10 分钟前
C语言:使用顺序表实现通讯录
c语言·数据结构·经验分享·笔记·visualstudio
不是老弟41 分钟前
rwqsd
数据结构·c++·算法
小龙报44 分钟前
《C语言疑难点 --- 字符函数和字符串函数专题(上)》
c语言·开发语言·c++·算法·学习方法·业界资讯·visual studio
程序员阿鹏1 小时前
560.和为k的子数组
数据结构
zbh06041 小时前
洛谷P5788 【模板】单调栈——单调栈
数据结构·算法
moonsims2 小时前
Z3 Technology-适用于无人机和机器人的 4K 高清摄像机和视频编码器
算法
摘星编程2 小时前
深入浅出 Tokio 源码:掌握 Rust 异步编程的底层逻辑
网络·算法·rust·系统编程·tokio