news 2026/3/28 5:17:31

力扣hot100 - 101、对称二叉树

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣hot100 - 101、对称二叉树

题目:

思路:判断是不是对称二叉树,本质上是判断根节点左右子树是否可以相互翻转。整体思路:比较左右子树的外边及里边,如果都相等就是对称二叉树。确定遍历顺序:这类题最好用后续遍历左右中,把左右孩子的信息处理完返回给上一层。递归前先判断一些一定是对称或一定是不对称的情况,左右都空、左空右不空、左不空右空、左右值不相等;注意把左右空放前面避免控制针;我们真正要递归处理的情况是左右不空且值相等,这是要判断左右子树外侧及内侧是否相同。

/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(int val, TreeNode left, TreeNode right) { * this.val = val; * this.left = left; * this.right = right; * } * } */ class Solution { public boolean isSymmetric(TreeNode root) { return a(root.left,root.right); } boolean a(TreeNode l , TreeNode r){ if(l == null && r == null){ return true; }else if(l == null && r != null){ return false; }else if(l != null && r == null){ return false; }else if(l.val != r.val){ return false; }else{ boolean outside = a(l.left,r.right); boolean inside = a(l.right,r.left); return outside && inside; } } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/16 5:15:45

Kotlin编程语言入门与常见问题

麻烦点赞: https://t.csdn.cn/ThlhE 谢谢!接下来,正片开始。 Kotlin是一种具有显著特性的编程语言,新手入门可先了解其入门知识,以及新手可能遇到的常见问题。 入门知识 与Java的关系:Kotlin与Java语言具…

作者头像 李华
网站建设 2026/3/27 0:29:02

三角形正反面之谜:三个点如何决定朝向?

你在做 3D 的时候,迟早会遇到一个“灵异事件”: 模型明明在眼前,结果转个角度它就消失了 开了背面剔除(Backface Culling),模型像被削了一层皮 做了镜像(Scale = -1),整个模型忽然“里外翻转” 阴影破洞、轮廓闪烁、某些面忽隐忽现 这时候很多人第一反应是:法线坏了?…

作者头像 李华
网站建设 2026/3/25 22:59:27

同花顺 app 设置技巧

自选分添加,是在右下就 同顺商城里面设置,搜索添加横屏日线操作:长按是日线游走。否则是日线时间滑动。

作者头像 李华