树 二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。二叉搜索树作为一种经典的数据结构,它既有链表的快速插入与删除操作的特点,又有数组快速查找的优势;所以应用十分广泛,例如在文件系统和数据库系统一般会采用这种数据结构进行高效率的排序与检索操作。

登录以参加训练计划

树的定义

树(Tree)是n(n>=0)个结点的有限集,它或为空树(n= 0); 或为非空树,对于非空树T:

(1)有且仅有一个称之为根的结点; (2)除根结点以外的其余结点可分为 m(m>O)个互不相交的有限集 T1 T2 , …Tm,其中每一个集合本身又是一棵树,并且称为根的子树(SubTree)。

完全二叉树

一棵深度为k的有n个结点的二叉树,对树中的结点按从上至下、从左到右的顺序进行编号,如果编号为i(1≤i≤n)的结点与满二叉树中编号为i的结点在二叉树中的位置相同,则这棵二叉树称为完全二叉树。

最小生成树

一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边。 最小生成树可以用kruskal(克鲁斯卡尔)算法或prim(普里姆)算法求出。

二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)

它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。二叉搜索树作为一种经典的数据结构,它既有链表的快速插入与删除操作的特点,又有数组快速查找的优势;所以应用十分广泛,例如在文件系统和数据库系统一般会采用这种数据结构进行高效率的排序与检索操作。

哈夫曼树

给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大的结点离根较近。

堆(heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。堆总是满足下列性质: 堆中某个结点的值总是不大于或不小于其父结点的值; 堆总是一棵完全二叉树。 将根结点最大的堆叫做最大堆或大根堆,根结点最小的堆叫做最小堆或小根堆。常见的堆有二叉堆、斐波那契堆等。

树状数组

树状数组或二叉索引树(英语:Binary Indexed Tree),又以其发明者命名为Fenwick树,最早由Peter M. Fenwick于1994年以A New Data Structure for Cumulative Frequency Tables为题发表在SOFTWARE PRACTICE AND EXPERIENCE。其初衷是解决数据压缩里的累积频率(Cumulative Frequency)的计算问题,现多用于高效计算数列的前缀和, 区间和。

线段树

线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。 使用线段树可以快速的查找某一个节点在若干条线段中出现的次数,时间复杂度为O(logN)。而未优化的空间复杂度为2N,实际应用时一般还要开4N的数组以免越界,因此有时需要离散化让空间压缩。

章节 1. 树与二叉树

开放

题目 尝试 AC 难度
P826  小球(drop) 3 2 10
P1382  淘汰赛 4 2 10
T1365  FBI树(fbi) 2 2 10
P912  FBI树 0 0 (无)
T1339  【例3-4】求后序遍历 3 2 10
P828  二叉树遍历(flist) 8 2 10
P829  二叉树输出(btout) 0 0 (无)
P908  加分二叉树 0 0 (无)
T1340  【例3-5】扩展二叉树 1 1 10
D1045  树的节点深度(无权) 5 2 10
D1046  树的节点深度(有权) 1 1 10
D1048  树的直径 0 0 (无)
D1049  树的重心 0 0 (无)
P939  树网的核 0 0 (无)
P889  求先序排列 0 0 (无)
P1383  求先序排列 3 2 10
P1384  二叉树的层序遍历 0 0 (无)
P1385  二叉树的层序遍历 II 0 0 (无)
P1386  二叉树的层平均值 0 0 (无)
P1387  二叉树的最小深度 0 0 (无)
P1388  从前序与中序遍历序列构造二叉树 0 0 (无)
P1389  从中序与后序遍历序列构造二叉树 0 0 (无)
T1336  【例3-1】找树根和孩子 5 2 10
D1047  子树大小 0 0 (无)
T1338  【例3-3】医院设置 0 0 (无)
TRN201  图/树基础、树的遍历 - 扩展题单 0 0 (无)
P1391   美国血统 4 3 10
P1392  【例3-2】单词查找树 2 1 10
P1393  二叉树深度 3 2 10

章节 2. 完全二叉树

开放

题目 尝试 AC 难度
P826  小球(drop) 3 2 10

章节 3. 最小生成树

开放

题目 尝试 AC 难度
P826  小球(drop) 3 2 10

章节 4. 哈夫曼树和哈夫曼编码

开放

题目 尝试 AC 难度
P826  小球(drop) 3 2 10

章节 5. 二叉搜索树

开放

题目 尝试 AC 难度
P826  小球(drop) 3 2 10
 
参加人数
2
创建人