本文涉及知识点
二叉树的遍历
队列的运用
二叉树的遍历和队列的相关概念前面已经介绍,忘记了的小伙伴复习后再看效果一定翻倍哟!
二叉树知识复习:[今天给二叉树加个BGM,二叉树唱歌了!]
队列知识复习:[leetcode栈队列]1 栈实现队列
1Leetcode101 对称二叉树给定一个二叉树,检查它是否是镜像对称的。
示例1:
例如,二叉树 [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
小蓝希望大家在此思考1分钟,
效果更好哈!
0 1题目解析思路
思路阐述
如果为对称二叉树,其连续的左右子节点值是相等的。我们将两节点先入队,然后每次从队列取出两个节点,最后将其左右子节点按照相反的顺序入队。队列空则结束判断。下面画图理解下。
从根节点访问,先把根节点的左右节点放入队列中。
从队列取出两个元素。将左节点的左孩子与右节点的右孩子比较如下图的最左边数值为35的节点和最右边的数值为35的节点(绿色节点).
02 代码实现
1c++版本 2python版本 3java版本