笃行
首页
个人 & 心法
互联网/硬件后台
游戏基础架构
UE 引擎
游戏业务
AI / 大模型
数据结构与算法
机器学习数学
通用基础
GitHub
首页
个人 & 心法
互联网/硬件后台
游戏基础架构
UE 引擎
游戏业务
AI / 大模型
数据结构与算法
机器学习数学
通用基础
GitHub
  • 概览

    • 数据结构与算法
  • 数据结构

    • 常见数据结构
  • 排序与查找

    • 排序算法全景与选型
    • 二分查找与变体
  • 经典算法专题

    • 双指针与滑动窗口
    • 单调栈与单调队列
    • 回溯算法
    • 动态规划
    • 贪心算法
    • 图论
    • 并查集
    • 区间问题
    • 字符串匹配
    • 位运算
    • 数学与数论
  • 后台高频算法

    • 后台高频算法

数据结构与算法

面向后台/游戏面试的 DS&A 复习专区:数据结构、排序查找、双指针/滑窗、回溯、动态规划、图论、后台高频算法。代码统一 C++,难点配 SVG 动画 / mermaid 图,每篇附面试高频题清单。

🧠 一句话记忆锚点

刷题先认题型再套模板:有序数组找目标→二分;区间/子串→双指针/滑窗;选/排列/组合→回溯;最优子结构+重叠子问题→DP;连通/最短路/依赖→图论。复杂度先估 O(),再考虑能否用空间换时间(哈希/前缀和/记忆化)。

复杂度大 O 速查

数据结构操作

结构查找插入删除备注
数组O(n)O(n)O(n)索引访问 O(1)
链表O(n)O(1)*O(1)**已知指针
哈希表O(1)O(1)O(1)最坏 O(n)
平衡树(红黑/AVL)O(log n)O(log n)O(log n)有序 + 范围查询
堆O(1) 查顶O(log n)O(log n)建堆 O(n)
跳表O(log n)O(log n)O(log n)期望值
TrieO(m)O(m)O(m)m=词长

排序:比较排序下界 O(n log n);快排平均 O(n log n)/最坏 O(n²),归并/堆稳定 O(n log n),插入近乎有序 O(n)。

常见量级参考(1s 内可处理):O(n) ~ 10⁸、O(n log n) ~ 10⁶~10⁷、O(n²) ~ 10⁴、O(2ⁿ) ~ n≤20、O(n!) ~ n≤11。看数据范围反推算法:n≤20 想状压/回溯,n≤10³ 想 O(n²) DP,n≤10⁵ 想 O(n log n),n≥10⁶ 想 O(n)/O(log n)。

解题套路总纲(看到 X 想到 Y)

题目特征首选思路专题
有序数组 / 找边界 / 求最值满足单调二分查找(含二分答案)二分查找
子数组 / 子串 / 定长或变长区间滑动窗口 / 双指针双指针与滑窗
两数之和(有序) / 去重 / 快慢指针判环双指针双指针与滑窗
全排列 / 子集 / 组合 / 棋盘放置回溯 + 剪枝回溯
最优解 + 重叠子问题 / 计数路径 / 背包动态规划动态规划
连通性 / 最短路 / 拓扑依赖 / 岛屿BFS/DFS/并查集/Dijkstra图论
Top-K / 第 K 大 / 合并 K 路堆 / 快速选择排序、数据结构
前缀匹配 / 自动补全Trie数据结构
分片扩缩容 / 缓存穿透 / UV 估算一致性哈希 / 布隆 / HLL后台高频算法

专区导航

  • 常见数据结构 —— 链表、栈队列、BST/AVL/红黑、堆、Trie、跳表、布隆、哈希表(含堆下沉 / 跳表查找动画)
  • 排序算法 —— 七大排序 C++ 实现、快排三路 partition 动画、堆排
  • 二分查找 —— 标准二分 + 左右边界 + 旋转数组 / 峰值 / 二分答案
  • 双指针与滑动窗口 —— 对撞 / 快慢指针、变长滑窗(含伸缩动画)
  • 回溯 —— 子集 / 排列 / 组合 / N 皇后 / 括号(含递归决策树)
  • 动态规划 —— 五步法、背包、LIS、编辑距离、股票、区间 DP(含填表动画)
  • 图论 —— BFS/DFS、拓扑排序、Dijkstra、并查集(含遍历动画)
  • 后台高频算法 —— 一致性哈希、布隆、LSM/B+、限流数学(含哈希环动画)

内容来源

综合整理自经典教材(《算法》第 4 版、《算法导论》)与高频面试题型;代码为教学示意的 C++ 实现,请以官方文档与教材为准。

最近更新: 2026/9/10 11:38