
最大堆,搜索树
丿Star
这个作者很懒,什么都没留下…
展开
-
最大堆的操作集
包括最大堆的创建,删除,插入操作: 代码如下: #include<iostream> #include<cstdio> #include<cstdlib> using namespace std; typedef struct HNode* Heap;//堆的类型定义 struct HNode{ int *Data;//存储元素的数组 int Size;/...原创 2018-11-21 20:28:45 · 138 阅读 · 0 评论 -
笛卡尔树
笛卡尔树是一种特殊的二叉树,其结点包含两个关键字K1和K2。首先笛卡尔树是关于K1的二叉搜索树,即结点左子树的所有K1值都比该结点的K1值小,右子树则大。其次所有结点的K2关键字满足优先队列(不妨设为最小堆)的顺序要求,即该结点的K2值比其子树中所有结点的K2值小。给定一棵二叉树,请判断该树是否笛卡尔树。 输入格式: 输入首先给出正整数N(≤1000),为树中结点的个数。随后N行,每行给出...原创 2018-12-03 09:27:03 · 218 阅读 · 2 评论 -
堆中的路径
将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。 输入格式: 每组测试第1行包含2个正整数N和M(≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[-10000, 10000]内的N个要被插入一个初始为空的小顶堆的整数。最后一行给出M个下标。 输出格式: 对输入中给出的每个下标i,在一行中输出从H[i]到根结点...原创 2018-12-03 09:31:17 · 114 阅读 · 0 评论 -
平衡二叉树的根
平衡二叉树的根 (25 分) 将给定的一系列数字插入初始为空的AVL树,请你输出最后生成的AVL树的根结点的值。 输入格式: 输入的第一行给出一个正整数N(≤20),随后一行给出N个不同的整数,其间以空格分隔。 输出格式: 在一行中输出顺序插入上述整数到一棵初始为空的AVL树后,该树的根结点的值。 输入样例1: 5 88 70 61 96 120 输出样例1: 70 输...原创 2018-12-03 19:47:04 · 1154 阅读 · 0 评论