树类
HAI__嗨I起来
IT
展开
-
二叉树的建立与遍历
数据结构实验之二叉树的建立与遍历Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述 已知一个按先序序列输入的字符序列,如abc,,de,g,,f,,,(其中逗号表示空节点)。请建立二叉树并按中序和后序方式遍历二叉树,最后求出叶子节点个数和二叉树深度。输入 输入一个长度小于50个字符的原创 2015-06-27 16:09:55 · 1068 阅读 · 0 评论 -
字典树
迷之好奇 Time Limit: 2000MS Memory limit: 65536K 题目描述FF得到了一个有n个数字的集合。不要问我为什么,有钱,任性。FF很好奇的想知道,对于数字x,集合中有多少个数字可以在x前面添加任意数字得到。如,x = 123,则在x前面添加数字可以得到4123,5123等。输入 多组输入。对于每组数据首先输入n原创 2016-03-03 21:41:01 · 314 阅读 · 0 评论 -
POJ 3007 Organize Your Train part II map与字典树的比较
点击打开链接给定一个字符串,从任意位置把它切为两半,得到两条子串定义 子串1为s1,子串2为s2,子串1的反串为s3,子串2的反串为s4现在从s1 s2 s3 s4中任意取出两个串组合,问有多少种不同的组合方法 规定:(1) 串Si不能和其 反串 组合(2) Si+Sj 与 Sj+Si 是两种组合方式(但未必是不同的组合方式)///字典树原创 2016-03-03 21:56:54 · 733 阅读 · 0 评论 -
二叉树后序遍历和层次遍历
数据结构实验之求二叉树后序遍历和层次遍历Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述 已知一棵二叉树的前序遍历和中序遍历,求二叉树的后序遍历。输入 输入数据有多组,第一行是一个整数t (t输出每组第一行输出二叉树的后序遍历序列,第二行输出二叉树的层次遍历序列示例输入2abde原创 2015-06-25 18:33:56 · 525 阅读 · 0 评论 -
HDU 2665 求静态区间的第k小值 主席树讲解。
#include #include #include #include using namespace std;const int N=100010;int T[N];int num[N];int san[N];int ls[N*20];int rs[N*20];int sum[N*20];int tot,rt;int n,m;void build(int l,in原创 2016-05-30 23:00:27 · 335 阅读 · 0 评论 -
HDU 5242Game 树上的贪心 树形dp 求出使K条链的权值总和最大
树链剖分找权值最大的前k条链题目大意:给定一个树形的游戏网络,可以从根节点出发k个人,每个人可以沿着一条路径走下去,不能回头,出口在各个叶子节点,在路过一个节点时可以 获得该点的权值,每个点的权值只能被获得一次,问k个人怎样走最后可以获得的权值最多解题思路:首先从反向建立一棵有向树(从叶子节点到根节点),首先dfs1找出每个节点到根节点的最大权路径,然后按权值递减排序原创 2016-05-21 22:05:27 · 874 阅读 · 0 评论 -
已知先序中序求树的高度或叶子数
#includeusing namespace std;char head[1000],mid[1000];int n;int Find(int ind,int low,int high){ int i=-1; for(i=low;i<=high;i++){ if(head[ind]==mid[i]) break; } return i;}int solve(int i原创 2016-07-13 16:58:15 · 445 阅读 · 0 评论 -
pat笛卡尔树
笛卡尔树是一种特殊的二叉树,其结点包含两个关键字K1和K2。首先笛卡尔树是关于K1的二叉搜索树,即结点左子树的所有K1值都比该结点的K1值小,右子树则大。其次所有结点的K2关键字满足优先队列(不妨设为最小堆)的顺序要求,即该结点的K2值比其子树中所有结点的K2值小。给定一棵二叉树,请判断该树是否笛卡尔树。输入格式:输入首先给出正整数N(\le≤1000),为树中结点的个数。随后N行原创 2016-07-13 21:26:14 · 724 阅读 · 0 评论 -
数据结构实验之查找一:二叉排序树 SDUT 二叉排序树的建立与判断 (与删除)
数据结构实验之查找一:二叉排序树 Time Limit: 400MS Memory limit: 65536K 题目描述对应给定的一个序列可以唯一确定一棵二叉排序树。然而,一棵给定的二叉排序树却可以由多种不同的序列得到。例如分别按照序列{3,1,4}和{3,4,1}插入初始为空的二叉排序树,都得到一样的结果。你的任务书对于输入的各种序列,判断它们是否能生成一样的二叉排序原创 2015-12-04 21:45:59 · 1861 阅读 · 0 评论 -
顺序存储的二叉树的最近的公共祖先问题
5-10 顺序存储的二叉树的最近的公共祖先问题 (25分)设顺序存储的二叉树中有编号为ii和jj的两个结点,请设计算法求出它们最近的公共祖先结点的编号和值。输入格式:输入第1行给出正整数nn(\le 1000≤1000),即顺序存储的最大容量;第2行给出nn个非负整数,其间以空格分隔。其中0代表二叉树中的空结点(如果第1个结点为0,则代表一棵空树);第3行给出一原创 2016-07-02 21:19:59 · 4388 阅读 · 0 评论 -
数据结构实验之查找二:平衡二叉树
数据结构实验之查找二:平衡二叉树 Time Limit: 400MS Memory limit: 65536K 题目描述根据给定的输入序列建立一棵平衡二叉树,求出建立的平衡二叉树的树根。输入输入一组测试数据。数据的第1行给出一个正整数N(n 输出输出平衡二叉树的树根。示例输入588 70 61 96 120示例输原创 2015-12-22 22:03:58 · 1002 阅读 · 0 评论 -
SDUT 1489 已知中序后序二叉树的先序,深度
求二叉树的先序遍历Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述 已知一棵二叉树的中序遍历和后序遍历,求二叉树的先序遍历输入 输入数据有多组,第一行是一个整数t (t输出 输出二叉树的先序遍历序列示例输入2dbgeafcdgebfcalnixulinux示例输出原创 2015-10-30 21:08:02 · 415 阅读 · 0 评论 -
poj3258 哈夫曼树 优先队列
River HopscotchTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 9252 Accepted: 3991DescriptionEvery year the cows hold an event featuring a peculiar vers原创 2015-08-22 20:45:42 · 459 阅读 · 0 评论 -
poj 2418 字典树 Map容器
Hardwood SpeciesTime Limit: 10000MS Memory Limit: 65536KTotal Submissions: 20877 Accepted: 8186DescriptionHardwoods are the botanical group of trees that have broad原创 2015-08-24 16:32:20 · 464 阅读 · 0 评论 -
SDUT2128 排序二叉树的中序遍历
树结构练习——排序二叉树的中序遍历Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述在树结构中,有一种特殊的二叉树叫做排序二叉树,直观的理解就是——(1).每个节点中包含有一个关键值 (2).任意一个节点的左子树(如果存在的话)的关键值小于该节点的关键值 (3).任意一个节点的右子树(如果存在的话)的关原创 2015-08-17 15:55:04 · 661 阅读 · 0 评论 -
SDUT 2482 二叉排序树
二叉排序树Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述二叉排序树的定义是:或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。 今天我们要判断两序原创 2015-08-17 17:08:48 · 590 阅读 · 0 评论 -
3302 范围最值问题 RMQ 线段树
效率至上Time Limit: 5000ms Memory limit: 65536K 有疑问?点这里^_^题目描述题意很简单,给出一个数目为n的非有序序列,然后有m次查询.对于每次查询输入两个正整数l,r请输出区间[l,r]的最大值与最小值的差值输入 第一行:输入两个正整数n,m (1;第二行:输入n个整数 大小范围为[1,100000]原创 2015-09-05 22:04:30 · 356 阅读 · 0 评论 -
poj 2503 哈希 Map 字典树
BabelfishTime Limit: 3000MS Memory Limit: 65536KTotal Submissions: 36967 Accepted: 15749DescriptionYou have just moved from Waterloo to a big city. The people here原创 2015-08-21 11:23:40 · 844 阅读 · 0 评论 -
SDUT 叶子问题
数据结构实验之二叉树七:叶子问题 Time Limit: 1000MS Memory limit: 65536K 题目描述已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立该二叉树并按从上到下从左到右的顺序输出该二叉树的所有叶子结点。输入 输入数据有多行,每一行是一个长度小于50个字符的字符串。输出 按从上到下原创 2015-11-05 21:49:05 · 631 阅读 · 0 评论 -
哈夫曼编码
数据结构实验之二叉树六:哈夫曼编码 Time Limit: 1000MS Memory limit: 65536K 题目描述字符的编码方式有多种,除了大家熟悉的ASCII编码,哈夫曼编码(Huffman Coding)也是一种编码方式,它是可变字长编码。该方法完全依据字符出现概率来构造出平均长度最短的编码,称之为最优编码。哈夫曼编码常被用于数据文件压缩中,其压缩率通常在原创 2015-11-05 23:02:15 · 2534 阅读 · 0 评论 -
SDUT 3340 树的同构
数据结构实验之二叉树一:树的同构 Time Limit: 1000MS Memory limit: 65536K 题目描述给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。图1 图2现给定两棵树,请你判断它们是否是同构的。输入 输...原创 2015-11-05 21:42:23 · 1060 阅读 · 0 评论 -
是否完全二叉搜索树 (对一个排序二叉树进行判别是否为完全二叉树)
2 是否完全二叉搜索树 (30分)将一系列给定数字顺序插入一个初始为空的二叉搜索树(定义为左子树键值大,右子树键值小),你需要判断最后的树是否一棵完全二叉树,并且给出其层序遍历的结果。输入格式:输入第一行给出一个不超过20的正整数N;第二行给出N个互不相同的正整数,其间以空格分隔。输出格式:将输入的N个正整数顺序插入一个初始为空的二叉搜索树。在第原创 2017-03-12 22:11:27 · 572 阅读 · 0 评论