树的最小深度
来源:互联网 发布:如何打开防火墙端口 编辑:程序博客网 时间:2024/06/06 02:56
给定一棵二叉树,返回树的最小深度。最小深度是从根节点到叶子结点的最短路径。
思路:递归
若为空树返回0;
如果左子树为空,返回右子树的最小深度+1,(+1是因为加上当前这个根节点);
如果右子树为空,返回左子树的最小深度+1;
如果左右子树都不为空,则取左、右子树最小深度的较小值,+1。
代码:
class Solution {public: int run(TreeNode *root) { if(root==NULL) return 0; int left = run(root->left); int right = run(root->right); if(left==NULL || right==NULL) return left+right+1; //这里用left+right+1是因为left和right之中定有一个为0,实现上面说一边为空的情况 return min(left,right)+1;//两边都不为空时 }};
阅读全文
0 0
- 树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- 二叉树的最小深度
- Android中Xposed框架篇-微信实现本地视频发布到朋友圈功能
- fastjson java类、字符串、jsonObject之前的转换
- Java中int跟Integer的区别
- 微信支付后台接口开发(扫码版)
- 本地安装docker
- 树的最小深度
- platform设备驱动全透析
- mapper.xml文件介绍
- python面试 -- 数据处理
- 如何将 iOS 项目的编译速度提高5倍
- 有人可以解释一下YANG,NETCONF,RESTCONF,XML之间的关系吗?
- liunx 下使用安装lnmp 到zabbix编译安装
- 类加载机制详解
- oracle学习之光标