一、二叉树介绍 简单地理解,满足以下两个条件的树就是二叉树: 本身是有序树; 树中包含的各个节点的度不能超过 2,即只能是 0、1 或者 2; 二、二叉树的性质 经过前人的总结,二叉树具有以下几个性质: 二叉树中,第 i 层最多有 2i-1 个结点。 如果二叉树的深度为 K,那么此二叉树最多有 2K ...
分类:
其他好文 时间:
2021-06-18 18:57:03
阅读次数:
0
给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度 3 。 解法一:深度优先搜索 public ...
分类:
其他好文 时间:
2021-06-10 18:17:17
阅读次数:
0
前言——什么是完全二叉树 定义: 一棵深度为k的有n个结点的二叉树,对树中的结点按从上至下、从左到右的顺序进行编号,如果编号为i(1≤i≤n)的结点与满二叉树中编号为i的结点在二叉树中的位置相同,则这棵二叉树称为完全二叉树。 性质: 1、具有n个结点的完全二叉树的深度(注:[ ]表示向下取整) 2、 ...
分类:
其他好文 时间:
2021-06-05 18:21:49
阅读次数:
0
树 建树 struct tr{ char x; tr*lc,*rc; }; #define nu NULL // 建树 tr* create() { tr*t ; char x;cin>>x; if(x=='#') { t=nu; }else{ t=new tr; t->x=x; t->lc=nu; ...
分类:
其他好文 时间:
2021-04-19 15:00:42
阅读次数:
0
编号104:二叉树的最大深度 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 返回它的最大深度 3 。 思路 递归实现:先找左子树的最大深度;再找 ...
分类:
其他好文 时间:
2021-04-05 12:45:42
阅读次数:
0
[104. 二叉树的最大深度] 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回它的最大深度 3 。 ...
分类:
其他好文 时间:
2021-02-22 11:59:49
阅读次数:
0
、数据结构与算法 1.二叉树前序、中序、后续遍历方式(递归以及非递归) 2.二叉树的深度以及广度遍历方式 3.二叉树遍历情况中所有连续节点的最大的值 4.求数组所有可能的子数组 5.给定一个数,求一个有序数组的两个数的和满足这个数(可以拓展一下变成两个无序的数组) 6.求一个数组的第二大值 7.大文 ...
分类:
其他好文 时间:
2021-01-22 12:22:20
阅读次数:
0
此篇博客主要记录使用递归求解的树相关的算法题。 一、二叉树的最大深度 104. 给定一个二叉树,找出其最大深度。 (easy) 2021-01-13 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例:给定二叉树 [3,9,20,null,null ...
分类:
其他好文 时间:
2021-01-15 12:07:22
阅读次数:
0
class Solution(object): def isBalanced(self, root): """ :type root: TreeNode :rtype: bool """ if not root: return True # 求左子树深度 leftDenth = self.treeD ...
分类:
其他好文 时间:
2020-09-18 00:02:14
阅读次数:
32
1、完全二叉树(complete binary tree)的定义 若设二叉树的深度为h,除第h层外,其他各层(1到h-1)的结点数都达到最大个数,第h层所有的结点都连续集中在最左边,这就是完全二叉树 2、满二叉树的定义(full binary tree) 满二叉树的节点要么是叶子节点,度为0,要么是 ...
分类:
其他好文 时间:
2020-07-30 16:55:10
阅读次数:
78