题目描述
给定一棵二叉树,判断其是否是自身的镜像(即:是否对称)
例如:下面这棵二叉树是对称的
1
/
2 2
/ \ /
3 4 4 3
下面这棵二叉树不对称。
1
/
2 2
\
3 3
备注:
希望你可以用递归和迭代两种方法解决这个问题
思路
- 像后序遍历一样的递归遍历,外侧节点和外侧节点比较,内侧节点和内侧节点比较
/**
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
class Solution {
public:
/**
*
* @param root TreeNode类
* @return bool布尔型
*/
bool isSymmetric(TreeNode* root) {
// write code here
// 题目要求用递归和迭代解决
// 由于忘了迭代是什么了,所以本次只能使用递归了
if