给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最小深度 2. 1 class Solution { ...
分类:
其他好文 时间:
2019-12-01 19:05:24
阅读次数:
118
描述: 填充每一个节点的下一个右侧指针,给定一个完美二叉树,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下: struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针,让这个指针指向其 ...
分类:
其他好文 时间:
2019-11-30 22:43:10
阅读次数:
115
https://oi wiki.org/ds/seg/ poj3468 区间增减值,区间和。 线段树思想:利用二叉树将每一个区间所需要的值都记录下来。 lazy思想:延迟对叶子节点的修改,要用到的时候才真的去修改,lazy数组记录修改的值。 ...
分类:
其他好文 时间:
2019-11-27 00:35:48
阅读次数:
61
6-2 统计二叉树叶子结点个数 (10 分) 本题要求实现一个函数,可统计二叉树的叶子结点个数。 函数接口定义: int LeafCount ( BiTree T); T是二叉树树根指针,函数LeafCount返回二叉树中叶子结点个数,若树为空,则返回0。 裁判测试程序样例: #include <s ...
分类:
其他好文 时间:
2019-11-25 20:43:09
阅读次数:
417
6-8 中序输出叶子结点 (10 分) 本题要求实现一个函数,按照中序遍历的顺序输出给定二叉树的叶结点。 函数接口定义: void InorderPrintLeaves( BiTree T); T是二叉树树根指针,InorderPrintLeaves按照中序遍历的顺序输出给定二叉树T的叶结点,格式为 ...
分类:
其他好文 时间:
2019-11-25 20:40:08
阅读次数:
103
世界上上最远的距离不是相隔天涯海角而是我在你面前可你却不知道我爱你 ―― 张小娴前段日子,枫冰叶子给Wiskey做了个征婚启事,聘礼达到500万哦,天哪,可是天文数字了啊,不知多少MM蜂拥而至,顿时万人空巷,连扫地的大妈都来凑热闹来了。―_―|||由于人数太多,Wiskey实在忙不过来,就把统计的事 ...
分类:
其他好文 时间:
2019-11-24 15:58:01
阅读次数:
68
采用递归的思路 :从根节点到叶子节点的一条路径,其实就是数据结构里的一次深度优先遍历DFS,因此整个过程可以采用先序遍历方式的DFS 每次遍历完成以后(即得到一个路径),并且输入的整数值正好等于节点值之和,那么输出这个路径并且回退一个节点(即回退到父节点); 如果不等于直接回退一个节点;如果父节点有 ...
分类:
编程语言 时间:
2019-11-23 22:23:06
阅读次数:
130
首先是哈夫曼树的定义:在一棵二叉树中,带权路径长度达到最小,成这样的树是最优二叉树,也是哈弗曼树。大概意思就是把数值大的节点放在树上面,数值小的节点放在树下面。哈夫曼树的结构使用顺序结构,这里直接使用了数组。 建造哈弗曼树的思路:根据二叉树的性质,有n个叶子节点,二叉树就会有2n-1个节点。定义一个 ...
分类:
其他好文 时间:
2019-11-23 16:33:12
阅读次数:
89
1、树结构常见概念 度:结点拥有的子树的数量被称作结点的度。 叶子结点:度为零的结点被称作叶子节点,也叫终端结点。 分支结点:树中除了叶子结点以外的其他结点被称作分支结点,也叫非终端结点。 根结点:根结点是特殊的分支结点,根结点没有父结点。 树的度:树内部各结点度的最大值被称作树的度。 树的高度:树 ...
分类:
其他好文 时间:
2019-11-23 12:32:25
阅读次数:
48
很简单,,但是自己还是没写出来。。。。 class Solution: def sumNumbers(self, root: TreeNode) -> int: self.res=0 def helper(root,tmp): if not root:return if not root.left ...
分类:
其他好文 时间:
2019-11-22 23:54:07
阅读次数:
121