|--01_基础知识
| |--01_数据结构和算法简介
| | |-- 简介
| | |-- 重要性
| | |-- 应用
| |
| |--02_大O记法
| |-- 大O记法
|
|--02_数组和字符串
| |--01_数组
| | |-- 数组简介
| | |-- 数组操作
| | |-- 搜索和排序
| |
| |--02_字符串
| |-- 字符串简介
| |-- 字符串操作
| |-- 数组介绍
|
|--03_链表
| |--01_单链表
| | |-- 单链表简介
| | |-- 单链表操作
| | |-- 检测并移除循环
| |
| |--02_双链表
| |-- 双链表简介
| |-- 双链表操作
|
|--04_栈和队列
| |--01_栈
| | |-- 栈简介
| | |-- 栈操作
| | |-- 栈的实现
| |
| |--02_队列
| |-- 队列简介
| |-- 队列操作
| |-- 队列的实现
|
|--05_树和图
| |--01_树
| | |-- 树的简介
| | |-- 二叉树
| | |-- 二叉搜索树
| |
| |--02_图
| |-- 图的简介
| |-- 深度优先搜索
| |-- 广度优先搜索
|
|--06_排序和搜索
| |--01_排序算法
| | |-- 冒泡排序
| | |-- 插入排序
| | |-- 归并排序
| | |-- 快速排序
| |
| |--02_搜索算法
| |-- 线性搜索
| |-- 二分搜索
|
|--07_哈希表
| |-- 哈希表简介
| |-- 哈希函数
| |-- 冲突解决
| |-- 哈希表应用
|
|--08_动态规划
| |-- 动态规划简介
| |-- 重叠子问题
| |-- 最优子结构
| |-- 从上到下vs从下到上
| |-- 常见的DP问题
|
|--09_贪心算法
| |-- 贪心算法简介
| |-- 标准的贪心算法
| |-- 贪心算法的应用
|
|--10_高级数据结构
| |-- Trie
| |-- 线段树
| |-- 不相交集合
| |-- Fenwick树
|
|--11_算法范例
| |-- 分而治之
| |-- 回溯法
| |-- 滑动窗口
|
|--12_面试准备
|-- 编码实践
|-- 问题解决策略
|-- 模拟面试