剑指Offer 28. 【对称】的二叉树(Easy)/ 二叉树问题!!!
2026/4/6 6:48:03
网站建设
项目流程
节点剑指Offer 68 - I. 二叉搜索树的最近公共祖先Easy剑指Offer 54. 二叉搜索树的第 K 大节点Easy二叉搜索树中两个【交换位置】的节点222. 完全二叉树结点数Easy450.【仍为二叉搜索树】删除二叉搜索树中的节点M距离、高度、值783. 二叉搜索树节点最小距离Easy剑指Offer 55. 二叉树的深度 / 平衡二叉树Easy543. 二叉树的直径Easy662. 二叉树的最大宽度Medium538. 把二叉搜索树转换为累加树Medium1339. 删除1条边分裂二叉树的最大乘积Medium结构剑指Offer 27. 二叉树的镜像Easy剑指Offer 26. 【树B是否为树A】的子结构Medium/ 100. 树A树B是否相同 / 树A树B是否存在相同的子树 / 652. 【树本身】是否存在相同的子结构572. 另一个树的子树Easy【同上一题剑指Offer 26】98. 验证二叉搜索树Medium/ 958. 验证完全二叉树Medium96.【N 个节点有多少种】不同的二叉搜索树Medium17.【合并】二叉树Easy814. 二叉树剪枝剪掉全为0的子树Medium序列前、中、后二叉树的【重建】3 种情况剑指Offer 33. 【判断】二叉搜索树的后序遍历序列Medium/ 255. 二叉搜索树的前序遍历序列Medium打印剑指Offer 32. 【层序遍历】从上到下打印二叉树 / 107. 从下到上打印二叉树 / Python调用TreeNode/ 打印 N 叉树的所有路径257. 二叉树的所有【路径】Easy/ 打印 N 叉树的所有路径 / 987. 二叉树的【垂序】遍历H199. 二叉树的右视图Medium/ 404. 左叶子之和Easy剑指Offer 28. 【对称】的二叉树【题目链接】对称的二叉树递归清晰图解# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val x# self.left None# self.right NoneclassSolution:### 1212 递归44 ms14.9 MBdefisSymmetric(self,root:TreeNode)-bool:defrecur(L,R):# 终止条件若当前左、右子节点均为空表示二者对称返回TrueifnotLandnotR:returnTrue# 若只有左子节点为空 或 只有右子节点为空 或 左、右子节点不相等则此子树不对称返回FalseifnotLornotRorL.val!R.val:returnFalse# 若当前左、右子节点对称则继续递归判断下面的左、右子树是否对称returnrecur(L.left,R.right)andrecur(L.right,R.left)returnrecur(root.left,root.right)ifrootelseTrue# 若根节点为空则直接返回True否则开始递归判断### 0122 迭代36 ms15.1 MBdefisSymmetric(self,root:TreeNode)-bool:# 若根节点为空则对称or 根节点的左右子树均为空ifnotroot:returnTrue# 先存放根节点的左、右子树queue[root.left,root.right]whilequeue:# 左、右子树依次出队lqueue.pop(0)rqueue.pop(0)# 若两棵子树均为空则对称ifnotlandnotr:continue# 若只有其中一棵子树为空 or 当前对称两个节点的值不相等则不对称elifnotlornotrorl.val!r.val:returnFalse# 左、右子树对称配对入栈_1queue.append(l.left)queue.append(r.right)# 左、右子树对称配对入栈_2queue.append(l.right)queue.append(r.left)returnTrue# 若所有对称节点都匹配则是对称树### 0122 递归36 ms15.2 MBdefisSymmetric(self,root:TreeNode)-bool:ifnotroot:returnTruedefdfs(l,r):ifnotlandnotr:returnTrueelifnotlornotrorl.val!r.val:returnFalse# 继续判断左、右子树是否对称returndfs(l.left,r.right)anddfs(l.right,r.left)returndfs(root.left,root.right)