LeetCode热题100-对称二叉树

给你一个二叉树的根节点 root , 检查它是否轴对称。

示例 1:

复制代码
输入:root = [1,2,2,3,4,4,3]
输出:true

核心思路

  1. 对比左子树右子树
  2. 对称规则:
    • 左节点值 = 右节点值
    • 左孩子左分支 ↔ 右孩子右分支
    • 左孩子右分支 ↔ 右孩子左分支
  3. 终止条件:双双为空对称,单一为空不对称
python 复制代码
class Solution:
    def isSymmetric(self, root: Optional[TreeNode]) -> bool:
        def check(l, r):
            if not l and not r:
                return True
            if not l or not r:
                return False
            return l.val == r.val and check(l.left, r.right) and check(l.right, r.left)
        return check(root.left, root.right)
相关推荐
瑞华丽PLM1 小时前
瑞华丽工业软件研发效能全景展示
人工智能·算法·cae·工业软件·国产软件·瑞华丽plm·瑞华丽
Kiyra1 小时前
Interview Agent:从面试平台到 Agent 工程实战的进化之路
面试·职场和发展
运筹vivo@1 小时前
两数之和(leetcode)
算法·leetcode·职场和发展
吃好睡好便好1 小时前
在Matlab中绘制二维等高线图
开发语言·人工智能·学习·算法·matlab
Mr_pyx2 小时前
LeetCode Hot 100 - 最长递增子序列完全题解
算法·leetcode·职场和发展
Mr_pyx2 小时前
LeetCode Hot 100 - 爬楼梯完全题解
算法·动态规划
z200509302 小时前
今日算法: 二叉搜索树
算法
蝈理塘(/_\)大怨种2 小时前
快速排序的递归与非递归实现
数据结构·算法
吴可可1232 小时前
用Bulge保持多段线圆弧连续性
算法·c#