题目描述
给定一个二叉树,检查它是否是镜像对称的。
例如,二叉树 [1,2,2,3,4,4,3]
是对称的。
1 | 1 |
但是下面这个 [1,2,2,null,3,null,3]
则不是镜像对称的:
1 | 1 |
代码实现
DFS(递归)
递归比迭代要简单很多
1 | /** |
BFS(队列 + 迭代)
队列 + 迭代的实现方式
这里的 while (q1.length && q2.length)
少了 length 就会一直执行下去,因为 Boolean([]) 为 true,这里的q指代 队列,shift
方法为删除数组的第一个元素并返回第一个元素的值。
1 | /** |