python程序二叉树最大深度(怎样求二叉树的深度用python)

技术如何找出python二叉树的最大深度这期内容当中小编将会给大家带来有关如何找出python二叉树的最大深度,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1,问题简述 给定一

本期,边肖将为您带来关于如何找出python二叉树最大深度的信息。文章内容丰富,从专业角度进行分析和描述。希望你看完这篇文章能有所收获。

1.问题的简要描述

给定一棵二叉树,找出它的最大深度。二叉树的深度是从根节点到最远叶节点的最长路径上的节点数。描述:叶节点是指没有子节点的节点。

2 .示例

给定二叉树[3,9,20,null,null,15,7],3/\ 9 20/\ 15 7返回其最大深度3。

3、解决思路

按照递归的方法,根据队列的特点也用另一种方法来解决问题,但是队列的耗时方法是相当明显的。

4、问题解决程序

导入Java . util . LinkedList;导入Java . util . queue;公共类MaxDepthTest2 { public static void main(String[]args){ tree node t1=new tree node(3);TreeNode t2=新的tree node(9);TreeNode t3=新的tree node(20);TreeNode t4=新的tree node(15);TreeNode t5=新的tree node(7);t1.left=t2t1.right=t3t3.left=t4t3.right=t5int MaxDepth=MaxDepth 3(t1);system . out . println(' MaxDepth=' MaxDepth ');} public static int MaxDepth(TreeNode root){ if(root==null){ return 0;}返回Math.max(maxDepth(root.left),MaxDepth(root . right))1;} public static int maxDepth3(TreeNode root){ if(root==null){ return 0;} QueueTreeNode queue=new LinkedList();queue . add(root);int level=0;while(!queue . isempty()){ int size=queue . size();水平;for(int I=0;一、尺寸;I){ tree node tree node=queue . poll();if (treeNode.left!=null){ queue . add(TreeNode . left);} if (treeNode.right!=null){ queue . add(TreeNode . right);} } }返回级别;}}

5.问题解决程序的图片版本

如何找出python二叉树的最大深度

二叉树的最大深度很常见。在这里,我给出两种解决方法。一种是利用系统栈的内容,通过递归求解,另一种是根据队列的特点求解。在这里,我会根据自己的喜好来解决,但是我想说的这张图特别漂亮。

这就是如何找出上面边肖分享的python二叉树的最大深度。如果你恰好也有类似的疑惑,可以参考上面的分析来理解。想了解更多,请关注行业信息渠道。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/144275.html

(0)

相关推荐

  • java==和equalse的区别是什么

    技术java==和equalse的区别是什么这篇文章主要介绍“java==和equalse的区别是什么”,在日常操作中,相信很多人在java==和equalse的区别是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好

    攻略 2021年11月24日
  • Ubuntu 16.04如何安装Kinetic

    技术Ubuntu 16.04如何安装Kinetic这篇文章将为大家详细讲解有关Ubuntu 16.04如何安装Kinetic,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、配置软件源

    攻略 2021年11月15日
  • go语言接口详解(go 接口)

    技术Go语言中io包核心接口怎么用小编给大家分享一下Go语言中io包核心接口怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Readeri

    攻略 2021年12月16日
  • hadoop的hive和spark有什么区别(spark和hive的优缺点)

    技术如何实现Apache Hive 和Spark的对比分析本篇文章给大家分享的是有关如何实现Apache Hive 和Spark的对比分析,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不

    攻略 2021年12月17日
  • 怎么获取AWR的脚本

    技术怎么获取AWR的脚本本篇内容介绍了“怎么获取AWR的脚本”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!#!/bin/

    攻略 2021年11月9日
  • 按照防火墙对数据的处理方法可将防火墙分为什么

    技术按照防火墙对数据的处理方法可将防火墙分为什么本篇内容主要讲解“按照防火墙对数据的处理方法可将防火墙分为什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“按照防火墙对数据的

    攻略 2021年11月9日