LeetCode之对称二叉树
对称二叉树
1.题目
给定一个二叉树,检查它是否是镜像对称的。
示例:
例如,二叉树 [1,2,2,3,4,4,3]
是对称的。
1
/ \
2 2
/ \ / \
3 4 4 3
但是下面这个 [1,2,2,null,3,null,3]
则不是镜像对称的:
1 | 1 |
2.分析
使用递归,先将完整的二叉树分成两个小的左右单独的树进行递归对比,如果左右子树都为空说明对称返回true,若一边为空一边不为空则返回false说明不对称,若节点的值不相同也返回false,最重要的是注意:因为要求镜像对称所以左子树的左节点要和右子树的右节点进行对比,左子树的右节点要和右子树的左节点进行对比!
3.代码
1 | /** |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 goMars的学习随记!
评论