剑指offer day7 搜索与回溯算法(简单)

day7题目:剑指 Offer 26. 树的子结构剑指 Offer 27. 二叉树的镜像剑指 Offer 28. 对称的二叉树

知识点:二叉树、dfs/bfs,难度为中等、简单、简单

学习计划链接:「剑指 Offer」 - 学习计划

输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构)

B是A的子结构, 即 A中有出现和B相同的结构和节点值。

例如: 给定的树 A:

     3
    / \
   4   5
  / \
 1   2

给定的树 B:

   4 
  /
 1`

返回 true,因为 B 与 A 的一个子树拥有相同的结构和节点值。

示例 1:

示例 2:

限制:

0 <= 节点个数 <= 10000

思路及代码

每当A、B结点值相同时比较B是否为A的子树(isSame)

请完成一个函数,输入一个二叉树,该函数输出它的镜像。

例如输入:

镜像输出:

示例 1:

限制:

0 <= 节点个数 <= 1000

注意:本题与主站 226 题相同:https://leetcode-cn.com/problems/invert-binary-tree/

思路及代码

简单的递归

请实现一个函数,用来判断一棵二叉树是不是对称的。如果一棵二叉树和它的镜像一样,那么它是对称的。

例如,二叉树 [1,2,2,3,4,4,3] 是对称的。

但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的:

示例 1:

示例 2:

限制:

0 <= 节点个数 <= 1000

注意:本题与主站 101 题相同:https://leetcode-cn.com/problems/symmetric-tree/

思路及代码

最后更新于

这有帮助吗?