题解 | #对称的二叉树#
对称的二叉树
http://www.nowcoder.com/practice/ff05d44dfdb04e1d83bdbdab320efbcb
判断一棵树是否为对称二叉树只需判断左右子树是否为对称二叉树即可,所以将根节点的左子树和右子树传入递归函数即可
- 递归出口条件:如果 p 和 q 都为空,则对称,返回 true
- 单层递归逻辑:
- 如果 p 为空 或者 q 为空 或者 p->val != q->val 则不是对称二叉树,返回 false
- 否则说明 p 不空 且 q 不空 且 p->val == q->val,那么再递归判断(1)左子树的左孩子和右子树的右孩子是否对称 以及(2)左子树的右孩子和右子树的左孩子是否对称,
一棵树为对称二叉树当前且当(1)(2)条件同时成立

