题目描述[原题链接][https://leetcode-cn.com/problems/symmetric-tree/]
给定一个二叉树,检查它是否是镜像对称的。
例如,二叉树[1,2,2,3,4,4,3]
是对称的。
1
/ \
2 2
/ \ / \
3 4 4 3
但是下面这个[1,2,2,null,3,null,3]
则不是镜像对称的:
1
/ \
2 2
\ \
3 3
算法描述
要检测二叉树是否是镜像,从根节点开始左右同时遍历,分两对;首先,左子树向左节点遍历与右子树与右节点遍历,这是第一对,第二对,左子树向右节点遍历,右子树向左节点遍历,过程中判断每个节点的val
是否相等,不相等直接返回false
、相等就继续向下遍历,直到走完整个树
C++代码
1 | class Solution { |
Java代码
1 | class Solution { |