题目描述: 第一次提交: class Solution(object): def minDepth(self, root): """ :type root: TreeNode :rtype: int """ if not root: return 0 if root.left and root.right: return min(self.minDepth(root.left)+1,self.minDepth(root.right)+1) if…
111. 二叉树的最小深度 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回它的最小深度 2. class Solution { public int minDepth(TreeNode root) { if (root == null) { return 0; } // null节点不参与比较 if…
111. 二叉树的最小深度 知识点:二叉树,递归 题目描述 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明:叶子节点是指没有子节点的节点. 示例 输入:root = [3,9,20,null,null,15,7] 输出:2 输入:root = [2,null,3,null,4,null,5,null,6] 输出:5 解法一:递归法 函数功能:求一颗二叉树的最小深度 1.终止条件:root == null, return 0: 2.该做什么:此题和…
题目描述: 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最小深度  2. 思路分析: 一开始的思路是直接求二叉树的最小深度,后来发现题目限定了必须是到叶结点的路径长度最短.所以需要判断当前结点是否是叶结点.判断若左子树为空,则返回右子树的到叶子结点的最短路径:否则返回左子树到叶结点的最短路径.…
问题 给出一棵二叉树,找出它的最小深度. 最小深度是指从根节点沿着最短路径下降到最近的叶子节点所经过的节点数. 初始思路 不难看出又是一个需要层次遍历二叉树的题目,只要在112基础上作出简单修改即可得出答案. class Solution { public: int minDepth(TreeNode *root) { if(!root) { ; } treeLevel_[].clear(); treeLevel_[].clear(); depth_ = ; bool flag = false;…
题目描述: 给定一个二叉树,找出其最小深度. 最小深度是从根节点到最近叶子节点的最短路径上的节点数量. 思路一: 把每一层的结点加入到队列,每一层i+1,到下一层时,把上一层在队列中的结点都弹出,按从左到右把下一层的结点逐个加入,如果首次遇到一个结点没有左子结点与右子节点,则返回i class Solution(object): def minDepth1(self, root): """ 按层次遍历,寻找第一个叶节点(左孩和右孩都为空) """…
最小深度,看起来很简单,就是左右节点的深度最小值 定义一个函数,计算其深度 class Solution { public int minDepth(TreeNode root) { if(root == null) { return 0; } else if(root.left == null && root.right ==null) { return 1; } else { int left = Depth(root.left); int right = Depth(root.rig…
使用深度优先搜索:时间复杂度O(n),空间复杂度O(logn) /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: int minDepth(TreeNode…
题目描述: 第一次提交: class Solution(object): def invertTree(self, root): """ :type root: TreeNode :rtype: TreeNode """ if not root: return None temp = root.left root.left = root.right root.right = temp# root.left,root.right = root.ri…
/* * @lc app=leetcode.cn id=111 lang=c * * [111] 二叉树的最小深度 * * https://leetcode-cn.com/problems/minimum-depth-of-binary-tree/description/ * * algorithms * Easy (37.27%) * Total Accepted: 12.2K * Total Submissions: 32.6K * Testcase Example: '[3,9,20,nu…