当前位置: 首页 > news >正文

上海网站建设 数字展厅如何把网站放到百度

上海网站建设 数字展厅,如何把网站放到百度,怎样下载做网站的软件,Wordpress 模块wordkey题目 原题链接 : 101.对称二叉树 题面 : 对于这一题呢,题目要求给出递归和迭代两种方式来解决!!! 注 : 这一题不仅仅是判断左右两个子节点是否对称,而是要遍历两棵树而且要比较内侧和外侧节点 递归 先确认递归三要素 : 确定递归函数的参数和返回值 bool …

题目

原题链接 : 101.对称二叉树

题面 : 

 对于这一题呢,题目要求给出递归和迭代两种方式来解决!!!

注 : 

  • 这一题不仅仅是判断左右两个子节点是否对称,而是要遍历两棵树而且要比较内侧和外侧节点

递归

先确认递归三要素 : 

  1. 确定递归函数的参数和返回值
bool cmp(TreeNode* left,TreeNode* right){}
  1. 确认终止条件
  • 左节点和右结点一个非空,那么一定不对称,返回false;
  • 左右结点均为空,那么对称,返回true
  • 均不为空,值不相等,返回false,值相等,返回下一步,即继续向下递归

那么递归函数的整体代码也就写好了 : 

    bool cmp(TreeNode* left,TreeNode* right){if(left==nullptr && right!=nullptr) return false;else if(left!=nullptr && right==nullptr) return false;else if(left==nullptr && right==nullptr) return true;else if(left->val != right->val) return false;else return cmp(left->left,right->right) && cmp(left->right,right->left);}
  1. 确认递归的逻辑 : 
bool outside = cmp(left->left, right->right);   // 左子树:左、 右子树:右
bool inside = cmp(left->right, right->left);    // 左子树:右、 右子树:左
bool isSame = outside && inside;                    // 左子树:中、 右子树:中(逻辑处理)
return isSame;

那么题解代码也就出来了 : 

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:bool cmp(TreeNode* left,TreeNode* right){if(left==nullptr && right!=nullptr) return false;else if(left!=nullptr && right==nullptr) return false;else if(left==nullptr && right==nullptr) return true;else if(left->val != right->val) return false;else return cmp(left->left,right->right) && cmp(left->right,right->left);}bool isSymmetric(TreeNode* root) {if(root == nullptr) return true;return cmp(root->left,root->right);}
};

 

迭代

迭代的思路和想法与递归相同,这里呢,就用queue队列来模拟

详细请看代码 :

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:bool isSymmetric(TreeNode* root) {if(root == nullptr) return true;queue<TreeNode*> que;que.push(root->left);que.push(root->right);while(!que.empty()){TreeNode* l = que.front();que.pop();TreeNode* r = que.front();que.pop();if(!l && !r) continue;//左右结点均为空,直接下一步;if((l&&!r) || (!l&&r)) return false;//左右结点一个为空,返回false;if(l->val != r->val) return false;//均不为空但不相等,直接返回false;que.push(l->left);que.push(r->right);que.push(l->right);que.push(r->left);}return true;}
};

最后看完,能给个赞吗,hh!!!

http://www.yayakq.cn/news/147923/

相关文章:

  • vs做网站创建项目时选哪个门店管理系统有哪些
  • 缙云县城乡建设局网站微信广告
  • 响应网站和模板网站有哪些二维码生成器联图
  • 万家建设有限公司网站做教育招生网站
  • 大连网站制作哪家最好大型网站制作公司飞数
  • 电子商务具体是指什么seo网站建设是什么意思
  • 定制网站开发成本估算表沈阳php网站
  • 合工大智能院网站建设专业app制作开发公司
  • 网站建设战略flash教程网站首页
  • 网络哪里能接活做网站网站的经典推广方法
  • 网站icp备案手续电子商务网站开发常见
  • 网站建设地图怎么设置网站建设各单位强化沟通协作
  • php技术应用于中小企业网站开发做网站项目的意义ppt介绍
  • 机械厂网站模板如何利用wordpress卖产品
  • 网站首页排名下降书店网站建设技术风险
  • 怎样做网站店铺哪些网站可以免费申请
  • 郑州的兼职网站建设网站租用 凡
  • 湖南建设监理员报名网站网络营销的概念及特征
  • 旅游网站开发意义和价值网站建设方案策划书ppt模板下载
  • 网站 标准有没有网址免费的
  • 张掖建设局网站赶集门户网站建设方案
  • 网站开发岗位说明书做企业网站 签合同要注意什么
  • 网站界面是什么做的水果网站开发所需的成本
  • 重庆微网站建设哪家好泉州最专业微信网站建设开发
  • 漳州网站建设网站运营同一个公司可以做几个网站
  • .top和网站wordpress连接自己的域名
  • 网网站站建建设设网站开发用的工具
  • 企业网站推广最有效的方法深圳网站seo公司
  • 做网站需要注册商标是几类心悦会员荣誉战场两张免做卡网站
  • 学校网站建设源码网站开发广告怎么写