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

cae毕业设计代做网站湖北省建设银行网站6

cae毕业设计代做网站,湖北省建设银行网站6,保定网站建设公司,上海网络推广的方法代码随想录 | Day17 | 二叉树#xff1a;二叉树的最大深度最小深度 主要学习内容#xff1a; 利用前序后序层序求解二叉树深度问题 其中穿插回溯法 104.二叉树的最大深度 104. 二叉树的最大深度 - 力扣#xff08;LeetCode#xff09; 递归遍历 后序遍历 …代码随想录 | Day17 | 二叉树二叉树的最大深度最小深度 主要学习内容 利用前序后序层序求解二叉树深度问题 其中穿插回溯法 104.二叉树的最大深度 104. 二叉树的最大深度 - 力扣LeetCode 递归遍历 后序遍历 1.递归函数参数和返回值 使用后序遍历一般都是上层需要使用下层函数的返回值 本道题目是返回值表示该子树的最大深度所以为int 函数参数就是当前结点 int r(TreeNode *t)2.确定终止条件 遇到空指针说明结束这层函数 if(tnullptr)return 0;3.本层逻辑 定义上 返回值是这棵子树的最大深度 所以记录左右子树的最大深度然后取最大值再加上本层就是自身的最大深度然后返回即可 int leftr(t-left);int rightr(t-right);int res1max(left,right);return res;完整代码 class Solution { public:int r(TreeNode *t){if(tnullptr)return 0;int leftr(t-left);int rightr(t-right);int res1max(left,right);return res;}int maxDepth(TreeNode* root) {return r(root);} }; class Solution { public:int r(TreeNode *t){if(tnullptr)return 0;return 1max(r(t-left),r(t-right));}int maxDepth(TreeNode* root) {return r(root);} }; 前序遍历 其实就是回溯法 1.确定函数参数和返回值 不需要返回值参数就是当前节点记录最大值由全局变量完成函数参数也可以完成两者等价 2.终止条件 如果当前节点左右孩子都为空说明深度就到这里为止了 3.本层处理逻辑 就是遍历本层的结点这是二叉树所以只有左右孩子两个用两个if来表示遍历即可 如果做过回溯篇会知道应该此处对应是for循环 然后左不为空深度继续遍历函数结束后还原现场 然后右边一样 if(t-left){res;r(t-left);res--;}if(t-right){res;r(t-right);res--;}完整代码 class Solution { public:int res,result;void r(TreeNode *t){if(t-leftnullptrt-rightnullptr){resultmax(res,result);return;}if(t-left){res;r(t-left);res--;}if(t-right){res;r(t-right);res--;}}int maxDepth(TreeNode* root) {res1;result0;if (root NULL) return result;r(root);return result;} }; 层序遍历 还是套用之前的模板就行不做过多的赘述 559.N叉树的最大深度 559. N 叉树的最大深度 - 力扣LeetCode 后序遍历 和刚刚思路一模一样模仿着写就行 class Solution { public:int r(Node *t){int depth0;if(tnullptr)return 0;for(auto c:t-children){int resr(c);depthmax(depth,res1);}return depth;}int maxDepth(Node* root) {if(rootnullptr)return 0;return r(root)1;} };前序遍历 也和前面一样差别就是前面是左右子树而这里是for循环 class Solution { public:int res;void r(Node *t,int depth){resmax(depth,res);for(auto c:t-children)r(c,depth1);}int maxDepth(Node* root) {if(rootnullptr)return 0;res0;r(root,1);return res;} };层序遍历 也还是套模板就行 111.二叉树最小深度 111. 二叉树的最小深度 - 力扣LeetCode 后序遍历 和最大深度的区别就是左孩子为空右孩子不为空和左不为空右为空的逻辑处理剩下的都一样 class Solution { public:int r(TreeNode *t){if (t nullptr) return 0;int leftr(t-left);int rightr(t-right);//左为空右不为空 返回右边最小深度1if(t-leftnullptrt-right!nullptr)return right1;//左不为空右为空 返回左边最小深度1if(t-left!nullptrt-rightnullptr)return left1;int res1min(left,right);return res;}int minDepth(TreeNode* root) {if(rootnullptr)return 0;return r(root);} };前序遍历 和之前一模一样 class Solution { public:int res;void r(TreeNode *t,int depth){if(t-rightnullptrt-leftnullptr){resmin(depth,res);return;}if(t-left){depth;r(t-left,depth);depth--;}if(t-right){depth;r(t-right,depth);depth--;}}int minDepth(TreeNode* root) {if(rootnullptr)return 0;res0x3f3f3f3f;r(root,1);return res;} };
http://www.eeditor.cn/news/119599/

相关文章:

  • 网站开发可选择的方案淘宝官网首页入口电脑版
  • 邢台市建设工程质量监督网站做外贸的国际网站有哪些
  • 随州哪里学做网站zara网站建设需求分析
  • 做装修的有那些网站wordpress怎么改标题和meta
  • 如何用手机做网站微信小程序开发实战源代码
  • 如果用局域网做网站临泉网站建设
  • 网站开源模板软件开发专业技能怎么写
  • 企业网站管理系统推荐上海软件开发外包
  • 东莞seo网络营销seo数据优化
  • 建设眼镜网站风格如何做网站霸屏
  • 国外做设备网站莱芜网站建设公众号建设
  • 信息网站的建设毕业设计指导网站开发
  • 企业网站维护如何制作app的页面
  • 电商网站建设 网站定制开发wordpress伪静态路径写法
  • phpcms网站seo怎么做网页特效的认识
  • 精品课程教学网站wordpress上传本地视频教程
  • 大型综合门户网站营销模式wordpress首页控件
  • 榆林做网站电话网站改版建设,有哪些内容
  • 学做网站教程视频南宁江南区网站制作价格
  • 企业做个网站多少钱山西省煤炭厅基本建设局网站
  • 建一个网站问谁手机app制作需要多少钱
  • 太原在线制作网站广告设计软件培训中心
  • 网站开发开题报告范文怎么做告白网站
  • 常德建设局官方网站建设电商网站多少钱
  • 效果图网站源码html格式的网站地图
  • 鲜花网站建设论文百度文库市场营销推广
  • 团总支网站建设宣传南京建设银行网站
  • 网页制作及欣赏知名seo公司
  • 彩钢做网站能赚钱吗wordpress 隔行
  • 专做西餐的网站服装网站建设需求分析