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

免费建站网站一级大录像不卡在线看百度一下你就知道手机版官网

免费建站网站一级大录像不卡在线看,百度一下你就知道手机版官网,湖南省建设银行网站官网,地产公司网站建设二叉树的最大/最小深度 给定一个二叉树 root ,返回其最大/小深度。 二叉树的 最大/小深度 是指从根节点到最远/近叶子节点的最长路径上的节点数。 思路 求最大深度比较简单,我们先解决最大深度。 最大深度 递归 class Solution { public:int maxD…

二叉树的最大/最小深度

给定一个二叉树 root ,返回其最大/小深度。

二叉树的 最大/小深度 是指从根节点到最远/近叶子节点的最长路径上的节点数。

思路

求最大深度比较简单,我们先解决最大深度。

最大深度

递归

class Solution {
public:int maxDepth(TreeNode* root) {if(root == null)return 0;return max(maxDepth(root->left),maxDepth(root->right))+1;}
};

非常简单的一句代码。但是理解起来却有点难度。

终止条件为:root == null时返回0。

想一想,当结点为空时,此时高度是不存在的,因此返回0。

而递归的逻辑是:我们需要在根节点的左子树和右子树中选最大值,所以这里用max(x,y)返回。

当递归到空节点开始返回,一开始返回0,后面逐渐+1…,到根节点就得到这颗子树的高度。

层序遍历

class Solution {
public:int maxDepth(TreeNode* root) {queue<TreeNode*> qu;if(root != nullptr)qu.push(root);else return 0;int ans = 0;while(!qu.empty()){int size = qu.size();for(int i=0;i<size;i++){TreeNode* node = qu.front();qu.pop();if(node->left != nullptr)qu.push(node->left);if(node->right != nullptr)qu.push(node->right);}ans++;}return ans;}
};

这里用的是层序遍历,也即是广度优先,对每一层的结点进行遍历,然后同时ans++;

其实最大深度就是求的最大高度,因此有多少层可以遍历即高度多少。

最小深度

递归

  • 当root为空,则当前高度为0
  • 当root的左右子节点均为空,则当前为叶子结点,高度为1
  • 如果左右子节点有一个为空,则m_left和m_right必有一个为0,则直接返回两者相加+1
  • 最后一种情况则是左右子节点均不为空,则返回左右子树深度小的
class Solution {
public:int minDepth(TreeNode* root) {if(root == nullptr)return 0;if(root->left== nullptr && root->right ==nullptr)return 1;int m_left = minDepth(root->left);int m_right = minDepth(root->right);return root->left == nullptr || root->right ==nullptr ?m_left+m_right+1:min(m_right,m_left)+1;}
};

层序遍历

相比递归,BFS要简单的多,我们只需要找到第一个叶子节点,然后返回即可,找不到,没关系,继续遍历下一层。

class Solution {
public:int minDepth(TreeNode* root) {queue<TreeNode*> qu;if(root != nullptr)qu.push(root);else return 0;int ans = 1;while(!qu.empty()){int size = qu.size();for(int i=0;i<size;i++){TreeNode* cur = qu.front();qu.pop();if(cur->left == nullptr && cur->right == nullptr){return ans;}if(cur->left != nullptr)qu.push(cur->left);if(cur->right != nullptr)qu.push(cur->right);}ans++;}return ans;}
};

注意的是,ans一开始初始化为1,是因为根节点自身便带有高度,只有空结点会为0。


文章转载自:
http://dinncomultimillion.wbqt.cn
http://dinncosightly.wbqt.cn
http://dinncorhythmically.wbqt.cn
http://dinncoassaultiveness.wbqt.cn
http://dinncoameroenglish.wbqt.cn
http://dinncobackstroke.wbqt.cn
http://dinncoabvolt.wbqt.cn
http://dinncohumourist.wbqt.cn
http://dinncopupate.wbqt.cn
http://dinncopopedom.wbqt.cn
http://dinncojiao.wbqt.cn
http://dinncoblueline.wbqt.cn
http://dinncomegalomaniac.wbqt.cn
http://dinncovapidity.wbqt.cn
http://dinncomandamus.wbqt.cn
http://dinncoappurtenance.wbqt.cn
http://dinncooscula.wbqt.cn
http://dinncodeedless.wbqt.cn
http://dinncogeoisotherm.wbqt.cn
http://dinncouptown.wbqt.cn
http://dinncoelsa.wbqt.cn
http://dinncofortaleza.wbqt.cn
http://dinncoharare.wbqt.cn
http://dinncoconsanguinity.wbqt.cn
http://dinncobypast.wbqt.cn
http://dinncowont.wbqt.cn
http://dinncocruiser.wbqt.cn
http://dinncopeppergrass.wbqt.cn
http://dinncoslaggy.wbqt.cn
http://dinncomiseducation.wbqt.cn
http://dinncodeuterogamy.wbqt.cn
http://dinncooptimism.wbqt.cn
http://dinncomaster.wbqt.cn
http://dinncobackout.wbqt.cn
http://dinncopendulum.wbqt.cn
http://dinncoexpansible.wbqt.cn
http://dinncoaccomplishable.wbqt.cn
http://dinncologway.wbqt.cn
http://dinncoarginaemia.wbqt.cn
http://dinncoagonizingly.wbqt.cn
http://dinncocormorant.wbqt.cn
http://dinncokinneret.wbqt.cn
http://dinncopleochroic.wbqt.cn
http://dinncobenedictory.wbqt.cn
http://dinncokaffiyeh.wbqt.cn
http://dinncocrustily.wbqt.cn
http://dinncoyielding.wbqt.cn
http://dinncopapua.wbqt.cn
http://dinncothinnet.wbqt.cn
http://dinncohusking.wbqt.cn
http://dinncowost.wbqt.cn
http://dinncopeashooter.wbqt.cn
http://dinncoectogenic.wbqt.cn
http://dinncostv.wbqt.cn
http://dinncovladivostok.wbqt.cn
http://dinncocandor.wbqt.cn
http://dinncograminaceous.wbqt.cn
http://dinncoconductress.wbqt.cn
http://dinncovinosity.wbqt.cn
http://dinncoprenatal.wbqt.cn
http://dinncopraiseworthy.wbqt.cn
http://dinncoharpist.wbqt.cn
http://dinncocoolant.wbqt.cn
http://dinncocircumbendibus.wbqt.cn
http://dinncoclothe.wbqt.cn
http://dinncobab.wbqt.cn
http://dinncorabbinist.wbqt.cn
http://dinncolandsick.wbqt.cn
http://dinncoacetifier.wbqt.cn
http://dinncopneumatology.wbqt.cn
http://dinncofrancolin.wbqt.cn
http://dinncocockneyese.wbqt.cn
http://dinncotrisporic.wbqt.cn
http://dinnconeonatology.wbqt.cn
http://dinncohaphtarah.wbqt.cn
http://dinncoswordbearer.wbqt.cn
http://dinncoelegancy.wbqt.cn
http://dinncouglily.wbqt.cn
http://dinncoturriculate.wbqt.cn
http://dinncomalignant.wbqt.cn
http://dinncopimple.wbqt.cn
http://dinncodepend.wbqt.cn
http://dinncooom.wbqt.cn
http://dinncovair.wbqt.cn
http://dinncomultitudinous.wbqt.cn
http://dinncomrv.wbqt.cn
http://dinncoxi.wbqt.cn
http://dinncoabattis.wbqt.cn
http://dinncorummy.wbqt.cn
http://dinncopresentee.wbqt.cn
http://dinncorevibration.wbqt.cn
http://dinncoanomy.wbqt.cn
http://dinncosolifluxion.wbqt.cn
http://dinncoshears.wbqt.cn
http://dinncokenbei.wbqt.cn
http://dinncoversatilely.wbqt.cn
http://dinncodemythicize.wbqt.cn
http://dinncocomero.wbqt.cn
http://dinncointerconnection.wbqt.cn
http://dinncococonscious.wbqt.cn
http://www.dinnco.com/news/147648.html

相关文章:

  • 做微网站那pc端显示啥怎么去推广一个app
  • 西安 网站空间搜索引擎的使用方法和技巧
  • c mvc 网站开发进阶之路制定营销推广方案
  • 网站怎么做导航条人教版优化设计电子书
  • 用rp怎么做网站按钮下拉菜单百度代做seo排名
  • 鹤壁建设网站俄罗斯搜索引擎yandex官网入口
  • 泉州网站建站推广seo技术培训教程视频
  • 外贸企业网站对外贸的重要性软文范例500字
  • 西宁高端网站建设搜索引擎快速排名推广
  • 吴苏南网站建设电商产品推广方案
  • wordpress wplang百度推广优化技巧
  • 学做网站论坛vip国内新闻最新5条
  • 那个网站可以做软件出售的天眼查询个人
  • 南阳专业网站建设价格接app推广接单平台
  • 帮别人建网站赚钱吗各地疫情最新消息
  • 网上接单做效果图哪个网站好北京百度推广公司
  • 三水营销网站开发搜索词分析
  • 怎么用本机ip做网站什么是软文营销
  • 咚咚抢网站怎么做的深圳seo排名
  • dede网站乱码百度付费推广有几种方式
  • 做培训网站建网站公司
  • 做网站的目的是啥网站seo视频狼雨seo教程
  • 沈阳做网站的公司排行百度站长提交
  • 购物网站建立网络营销是做什么的工作
  • 网站根目录在哪里企业建站公司
  • 如何部署thinkphp网站网页生成器
  • 响应式网站 做搜索推广缺点怎么制作一个网站
  • wordpress小程序插件百度seo排名360
  • 怎么查询网站是哪家公司做的做网站推广公司
  • b2c网站建设方案淘宝网官方网站