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

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

🔹 四大基础数据结构

  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
图   → 基于邻接表/邻接矩阵,结合树和链表
相关推荐
ideaout技术团队1 小时前
leetcode学习笔记2:多数元素(摩尔投票算法)
学习·算法·leetcode
代码充电宝1 小时前
LeetCode 算法题【简单】283. 移动零
java·算法·leetcode·职场和发展
不枯石4 小时前
Matlab通过GUI实现点云的均值滤波(附最简版)
开发语言·图像处理·算法·计算机视觉·matlab·均值算法
不枯石4 小时前
Matlab通过GUI实现点云的双边(Bilateral)滤波(附最简版)
开发语言·图像处理·算法·计算机视觉·matlab
白水先森6 小时前
C语言作用域与数组详解
java·数据结构·算法
想唱rap6 小时前
直接选择排序、堆排序、冒泡排序
c语言·数据结构·笔记·算法·新浪微博
老葱头蒸鸡7 小时前
(27)APS.NET Core8.0 堆栈原理通俗理解
算法
视睿7 小时前
【C++练习】06.输出100以内的所有素数
开发语言·c++·算法·机器人·无人机
柠檬07118 小时前
matlab cell 数据转换及记录
算法
YuTaoShao8 小时前
【LeetCode 每日一题】2221. 数组的三角和
数据结构·算法·leetcode