Python3实现二叉树的最大深度


Posted in Python onSeptember 30, 2019

问题提出:

给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。

说明: 叶子节点是指没有子节点的节点。

解决思路:递归法求解。从根结点向下遍历,每遍历到子节点depth+1。

代码实现( ̄? ̄):

# Definition for a binary tree node.
# class TreeNode:
#   def __init__(self, x):
#     self.val = x
#     self.left = None
#     self.right = None

class Solution:
  def maxDepth(self, root: TreeNode) -> int:
    if root==None:
      return 0
    count = self.getDepth(root,0)
    return count
  
  def getDepth(self,node,count):
    if node!=None:
      num1 = self.getDepth(node.left,count+1);
      num2 = self.getDepth(node.right,count+1);
      num = num1 if num1>num2 else num2
      return num
    else:
      return count

时间和空间消耗:

Python3实现二叉树的最大深度

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python基于pygame实现响应游戏中事件的方法(附源码)
Nov 11 Python
实例讲解Python中global语句下全局变量的值的修改
Jun 16 Python
python构建自定义回调函数详解
Jun 20 Python
详解Python import方法引入模块的实例
Aug 02 Python
Python实现的自定义多线程多进程类示例
Mar 23 Python
Django中STATIC_ROOT和STATIC_URL及STATICFILES_DIRS浅析
May 08 Python
在IPython中执行Python程序文件的示例
Nov 01 Python
Python动态参数/命名空间/函数嵌套/global和nonlocal
May 29 Python
python判断文件夹内是否存在指定后缀文件的实例
Jun 10 Python
selenium处理元素定位点击无效问题
Jun 12 Python
Python 数据分析之逐块读取文本的实现
Dec 14 Python
将不规则的Python多维数组拉平到一维的方法实现
Jan 11 Python
给我一面国旗 python帮你实现
Sep 30 #Python
python的mysql数据库建立表与插入数据操作示例
Sep 30 #Python
感知器基础原理及python实现过程详解
Sep 30 #Python
基于python的BP神经网络及异或实现过程解析
Sep 30 #Python
Window10下python3.7 安装与卸载教程图解
Sep 30 #Python
Python检查图片是否损坏及图片类型是否正确过程详解
Sep 30 #Python
Python3 合并二叉树的实现
Sep 30 #Python
You might like
php MySQL与分页效率
2008/06/04 PHP
在windows服务器开启php的gd库phpinfo中未发现
2013/01/13 PHP
PHP基于curl模拟post提交json数据示例
2018/06/22 PHP
jQuery选择头像并实时显示的代码
2010/06/27 Javascript
前端开发的开始---基于面向对象的Ajax类
2010/09/17 Javascript
jq选项卡鼠标延迟的插件实例
2013/05/13 Javascript
JS中获取数据库中的值的方法
2013/07/14 Javascript
jquery+php实现搜索框自动提示
2014/11/28 Javascript
JavaScript将字符串转换成字符编码列表的方法
2015/03/19 Javascript
JavaScript获取DOM元素的11种方法总结
2015/04/25 Javascript
jQuery中事件与动画的总结分享
2016/05/24 Javascript
jQuery获取radio选中项的值实例
2016/06/18 Javascript
javascript replace()第二个参数为函数时的参数用法
2016/12/26 Javascript
Angular 4.x 动态创建表单实例
2017/04/25 Javascript
使用Require.js封装原生js轮播图的实现代码
2017/06/15 Javascript
JS基于正则实现数字千分位用逗号分隔的方法
2017/06/16 Javascript
Jquery中.bind()、.live()、.delegate()和.on()之间的区别详解
2017/08/01 jQuery
jQuery实现checkbox即点即改批量删除及中间遇到的坑
2017/11/11 jQuery
原生JS实现多个小球碰撞反弹效果示例
2018/01/31 Javascript
详解JS转换数值函数Number()、parseInt()、parseFloat()
2018/08/24 Javascript
微信小程序 点击切换样式scroll-view实现代码实例
2019/10/11 Javascript
jQuery 隐藏/显示效果函数用法实例分析
2020/05/20 jQuery
前端vue如何使用高德地图
2020/11/05 Javascript
Python3搜索及替换文件中文本的方法
2015/05/22 Python
Python 实现「食行生鲜」签到领积分功能
2018/09/26 Python
对python xlrd读取datetime类型数据的方法详解
2018/12/26 Python
python 默认参数相关知识详解
2019/09/18 Python
Python SSL证书验证问题解决方案
2020/01/13 Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
2020/04/08 Python
轻松掌握CSS3中的字体大小单位rem的使用方法
2016/05/24 HTML / CSS
法国房车租赁网站:Yescapa
2019/08/26 全球购物
《难忘的泼水节》教学反思
2014/02/27 职场文书
党员四风剖析材料
2014/08/27 职场文书
2014年党支部书记工作总结
2014/12/04 职场文书
论文评审意见
2015/06/05 职场文书
JavaScript offset实现鼠标坐标获取和窗口内模块拖动
2021/05/30 Javascript