数据结构与算法

复杂度分析、链表、栈、队列与堆、树结构

5 篇文档MODULE 17
241

复杂度分析:时间/空间复杂度、均摊分析和性能边界

考点 241|阅读时间约 45 分钟 适用岗位:高级 Java 工程师、技术专家、架构师 一、为什么复杂度分析是面试的"第一关" 一个算法写完能跑,和这个算法在 100 万数据下不崩,是两回事。复杂度分析就是帮…

242

链表、栈、队列与堆:典型操作、复杂度和工程应用

考点 242|Java 技术专家面试高频考点 阅读时间:约 45 分钟 关键词:链表、栈、队列、堆、时间复杂度、PriorityQueue、LinkedList、Deque 一、引言:为什么这四个数据结构是面试…

243

树结构:二叉树、BST、AVL、红黑树、B/B+Tree 和 Trie

一、为什么需要树? 数组和链表已经能表示"顺序"关系,但现实世界的数据大多是 层级化 的: 文件系统是目录嵌套目录 HTML DOM 是节点嵌套节点 数据库索引需要快速定位百万行数据中的某一行 路由表需要根据 …

244

哈希与一致性哈希:冲突解决、扩容、虚拟节点和数据倾斜

阅读时间 :约 45 分钟 难度 :中级 → 架构师 前置知识 :数组与链表基础、HashMap 基本使用、分布式系统基本概念 一、从一道面试题切入 "10 亿个 URL,如何快速判断一个 URL 是否在其中?…

245

高频算法思想:二分、双指针、滑动窗口、回溯、贪心和动态规划

阅读时间 :约 45 分钟 难度 :中高级 分类 :数据结构与算法 一、引言:为什么算法思想比刷题更重要 面试中有一个常见的误区:候选人 LeetCode 刷了 500 道题,结果遇到一道变种题当场卡住。原因很…