低价手机网站建设,哪些做调查问卷挣钱的网站,漯河网站建设服务公司,wordpress 主题白屏学习这部分还是要多画图#xff0c;多思考 101.对称二叉树 题目 给你一个二叉树的根节点 root #xff0c; 检查它是否轴对称。 题目链接 力扣#xff08;LeetCode#xff09;官网 - 全球极客挚爱的技术成长平台 文字 和 画图 分析 明确结束条件和继续递归条件 判断是否对称… 学习这部分还是要多画图多思考 101.对称二叉树 题目 给你一个二叉树的根节点 root 检查它是否轴对称。 题目链接 力扣LeetCode官网 - 全球极客挚爱的技术成长平台 文字 和 画图 分析 明确结束条件和继续递归条件 判断是否对称我们一定是拿左子树和右子树进行对比这里的根节点反而没有那么重要 如下图这是遍历思路 图1 图2 从图我们可以知道 结束条件有以下几种情况 当左子树的值不等于右子树的值返回 false当左子树和右子树都为空 ,返回 true 如图一34号当左子树和右子树只有一个为空 ,返回 false 如图二2号) (结束条件有先后顺序为了防止是空树现象一定要先验证这个) 从图中可以明白左子树和右子树一定要同时进行比较用递归的话参数一定是两个就是左子树和右子树的节点 这里leetcode给的参数只有一个所以我们得创建一个函数用它帮我们返回真假 代码
bool _isSymmetric(struct TreeNode* Left,struct TreeNode* Right)
{if(Left NULL Right NULL){return true;}if(Left NULL || Right NULL){return false;}if(Left-val ! Right-val){return false;}return _isSymmetric(Left-left,Right-right) _isSymmetric(Left-right,Right-left);}
bool isSymmetric(struct TreeNode* root)
{return _isSymmetric(root-left,root-right) ;
}