博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
111 Minimum Depth of Binary Tree 二叉树的最小深度
阅读量:4970 次
发布时间:2019-06-12

本文共 1584 字,大约阅读时间需要 5 分钟。

给定一个二叉树,找出其最小深度。

最小深度是从根节点到最近叶节点的最短路径的节点数量。
详见:https://leetcode.com/problems/minimum-depth-of-binary-tree/description/

Java实现:

递归实现:

/** * Definition for a binary tree node. * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */class Solution {    public int minDepth(TreeNode root) {        if(root==null){            return 0;        }        int minLeft=minDepth(root.left);        int minRight=minDepth(root.right);        if(minLeft==0||minRight==0){            return minLeft>=minRight?minLeft+1:minRight+1;        }        return Math.min(minLeft,minRight)+1;    }}

非递归实现:

/** * Definition for a binary tree node. * public class TreeNode { *     int val; *     TreeNode left; *     TreeNode right; *     TreeNode(int x) { val = x; } * } */class Solution {    public int minDepth(TreeNode root) {        if(root==null){            return 0;        }        LinkedList
que=new LinkedList
(); que.offer(root); int node=1; int level=1; while(!que.isEmpty()){ root=que.poll(); --node; if(root.left==null&&root.right==null){ return level; } if(root.left!=null){ que.offer(root.left); } if(root.right!=null){ que.offer(root.right); } if(node==0){ node=que.size(); ++level; } } return level; }}

 

转载于:https://www.cnblogs.com/xidian2014/p/8719514.html

你可能感兴趣的文章
ajax连接池和XMLHttpRequest
查看>>
[Voice communications] 声音的滤波
查看>>
BZOJ.3139.[HNOI2013]比赛(搜索 Hash)
查看>>
json在线解析
查看>>
存储设备形成的层次结构
查看>>
源码阅读 - java.util.concurrent (三)ConcurrentHashMap
查看>>
Daily Scrum 10.30
查看>>
SQL语言之概述(一)
查看>>
数据库表 copy
查看>>
LinkedList源码解析
查看>>
SignalR循序渐进(一)简单的聊天程序
查看>>
MyServer
查看>>
Learning Cocos2d-x for XNA(2)——深入剖析Hello World
查看>>
软件建模——第9章 毕业论文管理系统—面向对象方法
查看>>
Http协议
查看>>
手机端web开发必备代码
查看>>
[SDOI2008]洞穴勘测
查看>>
NOI2014 购票
查看>>
Difference between Linearizability and Serializability
查看>>
电影《绿皮书》
查看>>