判断二叉树是否对称-题目描述
请实现一个函数,用来判断一棵二叉树是不是对称的。
如果一棵二叉树和它的镜像一样,那么它是对称的。
样例
如下图所示二叉树[1,2,2,3,4,4,3,null,null,null,null,null,null,null,null]为对称二叉树:
1
/ \
2 2
/ \ / \
3 4 4 3
如下图所示二叉树[1,2,2,null,4,4,3,null,null,null,null,null,null]不是对称二叉树:
1
/ \
2 2
\ / \
4 4 3
判断二叉树是否对称-总体思路
这个问题比较tricky的地方在于:根节点的处理是不同于其他节点呢?
那么为什么root节点比较特殊呢? 根因在于:对称轴便是在于root上,root一定是一个特例!
想明白这一点之后,自然就是遍历顺序了:前序遍历
判断二叉树是否对称-代码实现
1 | /** |