题目描述输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。解题思路想了很久。。首先本渣渣就不太理解递归在python中的实现,其次又不知道怎么去找到最长路径,真是很费脑子,开始正题吧首先明确二叉树每个节点都可以看作“根节点”,依次延伸下去(二叉树的递归定义),对于根节点,我要求这个节点的最大深度,那么只要求两棵左右子树的最大深度            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-08 15:38:18
                            
                                196阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                    本篇开始总结二叉树的常用解题技巧,二叉树的顺序遍历和层序遍历刚好对应深度优先搜索和广度优先搜索。1 顺序遍历题目列表144. 前序遍历145. 二叉树的后序遍历 94. 二叉树的中序遍历144. 二叉树的前序遍历        &nb            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-24 13:29:49
                            
                                14阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            解决思路如果是空树,则深度为0;否则,递归计算左子树的深度记为m,递归计算右子树的深度记为n,二叉树的深度则为m与n的较大者加1。int Depth(BiTree T)
{
  if(T==NULL)
    return 0;
  else
  {
    m=Depth(T->lchild);
    n=Depth(T->rchild);
    if(m>n)            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-05-06 13:40:52
                            
                                223阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            二叉树宽度: 使用队列,层次遍历二叉树。在上一层遍历完成后,下一层的所有节点已经放到队列中,此时队列中的元素个数就是下一层的宽度。以此类推,依次遍历下一层即可求出二叉树的最大宽度            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2017-12-10 22:15:00
                            
                                402阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            二叉树有深度和高度两个属性,一个节点的深度指的是从根节点到该节点路径的长度,根节点的深度为1;一个节点的高度指的是从该节点到叶子节点所有路径上包含节点个数的最大值。叶子节点的高度为1,往上节点的高度依次递增。所以要求二叉树的深度,我们要求出从根节点到叶子结点最长路径的长度,从根节点到所有的叶子结点,实际就是在遍历这棵树,使用深度优先遍历可以解决这个问题。首先还是定义一颗二叉树的类。   然后,为了            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-08 14:05:45
                            
                                22阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            题目描述:
给定一个二叉树,找出其最大深度。
二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。
说明: 叶子节点是指没有子节点的节点。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2020-06-06 22:17:00
                            
                                40阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            题目输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。题目示例例如:给定二叉树 [3,9,20,null,null,15,7]   3   / \  9  20    /  \   15   7返回它的最大深度3解题思路可以利用深度优先搜索(DFS)、广度优先搜索(BFS)常见的 DFS(Deep First Search) 	先序遍历(根左右)、中序遍历(左根右)、后序遍历(..            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-01-07 11:21:49
                            
                                232阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            题目输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。题目示例例如:给定二叉树 [3,9,20,null,null,15,7]   3   / \  9  20    /  \   15   7返回它的最大深度3解题思路可以利用深度优先搜索(DFS)、广度优先搜索(BFS)常见的 DFS(Deep First Search) 	先序遍历(根左右)、中序遍历(左根右)、后序遍历(..            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-25 09:47:05
                            
                                156阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            0x00 题目给定一个二叉树,找出其            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-10-25 00:09:34
                            
                                102阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 二叉树深度优先遍历三种方式 不同于树的广度优先遍历(一层一层的走,同一层从左到右走完开始走下一层的横向遍历方式),深度优先遍历是一条路走到黑,然后再走下一条;  先序遍历:根节点--左子节点---右子节点(先从根节点开始,走左子树,对这个左子树依然按照根节点--左子节点---右子节点的顺序遍历,然后左边的子树走完,按照同样的方式遍历:根节点---左子节点--右子            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-28 22:18:18
                            
                                59阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。 思路 如果一棵树只有一个结点,它的深度为1,如果根节点只有左子树而没有右子树,那么树的深度应该是其左子树的深度+1.同样如果根节点只有右子树而没有左子树,那么树的深度应该是            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-08 14:26:52
                            
                                370阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            0x00 题目给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。0x01 思路方式一: 通过递归左右子树,然后取最大值即可。方式二: 通过二叉树的层序遍历方式,从当前节点,依次向下寻找。 每往下一层,同时记录深度。 直到最后一层为空时,则找到了最远的叶子节点。0x02 解法语言:Swift树节点:TreeN            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-10-25 00:09:05
                            
                                105阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            class Solution { public: int TreeDepth(TreeNode* pRoot) { if(pRoot == NULL) return 0; int depth,left,right; left = TreeDepth(pRoot->left); righ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2018-09-14 10:19:00
                            
                                94阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            求二叉树的深度,通常使用这种递归算法. int GetDepth(Node* root) { if (NULL == root) {     return 0; } int left_depth =             
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2010-08-27 21:31:55
                            
                                881阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             如上图二叉树的遍历主要思想就是通过递归方式进行遍历,同时如果要非递归遍历的话,一般情况下,深度优先遍历需要借助stack保存中间变量的方式进行遍历,广度优先遍历的话需要借助queue来保存每一层变量的方式进行遍历。对于深度优先遍历的递归的三种形式,不进行介绍,广度优先遍历,递归和非递归这篇文章也不进行介绍,这里就是想深刻的说下,深度优先遍历的三种非递归实现的原理。先说下三种遍历的实现顺            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-05 12:03:08
                            
                                75阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            时间复杂度:空间复杂度:            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-02-29 09:47:42
                            
                                58阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            二叉树的遍历是指从根结点出发,按照某种次序依次访问二叉树中所有结点,使得每个结点被访问一次且仅被访问一次。根据定义中的某种次序,二叉树的遍历方式主要分为前序遍历,中序遍历,后序遍历以及层序遍历。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-31 20:14:10
                            
                                222阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、满二叉树 一棵二叉树的结点要么是叶子结点,要么它有两个子结点(如果一个二叉树的层数为K,且结点总数是(2^k) -1,则它就是满二叉树。) 二、完全二叉树 若设二叉树的深度为k,除第 k 层外,其它各层 (1~k-1) 的结点数都达到最大...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2020-10-29 00:26:00
                            
                                775阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            一、满二叉树  一棵二叉树的结点要么是叶子结点,要么它有两个子结点(如果一个二叉树的层数为K,且结点总数是(2^k) -1,则它就是满二叉树。)二、完全二叉树  若设二叉树的深度为k,除第 k 层外,其它各层 (1~k-1) 的结点数都达到最大个数,第k 层所有的结点都连续集中在最左边,这就是完全二            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-09-28 14:04:54
                            
                                1970阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1 问题描述给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。示例 1:输入: root = [1,None,2,3]输出: 3示例 2:输入: root = []输出: 0示例 3:输入: root = [1]输出: 1示例 4:输入: root = [1,2]输出: 2示例 5            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-09 14:11:23
                            
                                82阅读
                            
                                                                             
                 
                
                                
                    