2022.3.21 LeetCode —— 二叉树题目汇总

文章目录

  • 前言
  • 一、二叉树遍历
    • 1.深度优先遍历
      • ①二叉树的三种遍历(递归版)
      • ②二叉树的三种遍历(迭代法)
    • 2.广度优先遍历
      • ①层序遍历五题合集
  • 二、二叉树的修改与构造
    • 1.翻转二叉树
    • 2.构造二叉树
    • 3.合并二叉树
  • 三、求二叉树的属性
    • 1.对称二叉树
    • 2.求最大深度
    • 3.求最小深度
    • 4.统计节点个数
    • 5.判断二叉树是否平衡
    • 6.找二叉树的所有路径
    • 7.判断两棵二叉树是否相同
    • 8.计算左叶子之和
    • 9.找左下角的值
    • 10.填充每个节点的下一个右侧节点指针
    • 11.寻找重复的子树
  • 四、二叉搜索树的修改与构造
    • 1.删除二叉搜索树中的节点
    • 2.二叉搜索树中的插入操作
    • 3.把二叉搜索树转换为累加树
    • 4.返回满足题意的二叉搜索树的种数
    • 5.修剪二叉搜索树
    • 6.将有序数组转换为二叉搜索树
    • 7.二叉树的序列化与反序列化
  • 五、求二叉搜索树的属性
    • 1.二叉搜索树中的搜索
    • 2.验证二叉搜索树
    • 3.二叉搜索树的最小绝对差
    • 4.二叉搜索树中第K小的元素
    • 5.二叉搜索子树的最大键值和
    • 6.二叉搜索树中的众数
    • 7.二叉树的最近公共祖先


前言

今天刷完二叉树部分的题目了,在这篇文章把之前做的题和知识点总结起来,方便以后查找。


一、二叉树遍历

1.深度优先遍历

①二叉树的三种遍历(递归版)

②二叉树的三种遍历(迭代法)

2.广度优先遍历

①层序遍历五题合集

队列Queue的一些方法


二、二叉树的修改与构造

1.翻转二叉树

2.构造二叉树

根据前序 + 中序 / 中序 + 后序 / 前序 + 后序 遍历序列构造二叉树

3.合并二叉树


三、求二叉树的属性

1.对称二叉树

2.求最大深度

3.求最小深度

4.统计节点个数

5.判断二叉树是否平衡

二叉树的高度与深度

6.找二叉树的所有路径

7.判断两棵二叉树是否相同

8.计算左叶子之和

9.找左下角的值

递归函数什么时候需要返回值?什么时候不需要返回值?

10.填充每个节点的下一个右侧节点指针

11.寻找重复的子树

Java 中数字和字符串拼接的问题 + Java中equals()和==的区别


四、二叉搜索树的修改与构造

1.删除二叉搜索树中的节点

2.二叉搜索树中的插入操作

3.把二叉搜索树转换为累加树

4.返回满足题意的二叉搜索树的种数

5.修剪二叉搜索树

6.将有序数组转换为二叉搜索树

7.二叉树的序列化与反序列化

String、StringBuffer与StringBuilder之间区别 + String.split()用法


五、求二叉搜索树的属性

1.二叉搜索树中的搜索

2.验证二叉搜索树

3.二叉搜索树的最小绝对差

4.二叉搜索树中第K小的元素

5.二叉搜索子树的最大键值和

6.二叉搜索树中的众数

7.二叉树的最近公共祖先

你可能感兴趣的:(leetcode,java,算法,数据结构,职场和发展)