树形结构

第一部分 基础树形结构 #

二叉树 #

  • 二叉树的基本概念与性质
  • 二叉树的遍历算法
  • 二叉树的存储结构
  • 二叉树的应用场景

二叉搜索树 #

  • BST的定义与特性
  • BST的插入与删除操作
  • BST的查找算法
  • BST的平衡性问题

平衡二叉树 #

  • AVL树的旋转操作
  • 红黑树的性质与操作
  • B树与B+树结构
  • 平衡树的应用比较

第二部分 高级树形结构 #

堆结构 #

  • 二叉堆的实现
  • 堆排序算法
  • 优先队列的应用
  • 斐波那契堆

字典树 #

  • Trie树的基本结构
  • Trie树的插入与查询
  • 压缩字典树
  • 字典树在字符串处理中的应用

线段树 #

  • 线段树的构建
  • 区间查询与更新
  • 懒惰传播技术
  • 二维线段树

第三部分 特殊树形结构 #

并查集 #

  • 并查集的基本操作
  • 路径压缩优化
  • 按秩合并策略
  • 并查集在图论中的应用

树状数组 #

  • 树状数组的原理
  • 单点更新与区间查询
  • 区间更新与单点查询
  • 多维树状数组

哈夫曼树 #

  • 哈夫曼编码原理
  • 哈夫曼树的构建
  • 数据压缩应用
  • 最优前缀码性质

第四部分 树形算法应用 #

树形动态规划 #

  • 树形DP基本思想
  • 树上背包问题
  • 树的最大独立集
  • 树的最小支配集

树的分治算法 #

  • 点分治原理
  • 边分治技术
  • 树的重心分解
  • 分治在树上的应用

树的匹配与覆盖 #

  • 树的最大匹配
  • 树的最小顶点覆盖
  • 树的最小边覆盖
  • 匹配算法的优化

第五部分 树形结构扩展 #

持久化数据结构 #

  • 可持久化线段树
  • 可持久化字典树
  • 函数式数据结构
  • 版本控制技术

空间划分树 #

  • KD树原理与构建
  • 四叉树与八叉树
  • 范围树结构
  • 空间索引应用

概率数据结构 #

  • 布隆过滤器
  • 跳表结构
  • 最小完美哈希
  • 概率树的应用