树
文章平均质量分 69
jinzk123
这个作者很懒,什么都没留下…
展开
-
遍历二叉树
题目描述已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并按中序和后序的方式遍历该二叉树。输入连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。输出每组输入数据对应输出2行:第1行输出中序遍历序列;第2行输出后序遍历序列。 示例输入abc,,de,g,,f,原创 2016-08-08 11:35:39 · 629 阅读 · 0 评论 -
数据结构实验之二叉树六:哈夫曼编码
题目描述字符的编码方式有多种,除了大家熟悉的ASCII编码,哈夫曼编码(Huffman Coding)也是一种编码方式,它是可变字长编码。该方法完全依据字符出现概率来构造出平均长度最短的编码,称之为最优编码。哈夫曼编码常被用于数据文件压缩中,其压缩率通常在20%~90%之间。你的任务是对从键盘输入的一个字符串求出它的ASCII编码长度和哈夫曼编码长度的比值。输入 输入数据有多组原创 2016-08-12 11:10:07 · 649 阅读 · 0 评论 -
平衡二叉树
题目描述根据给定的输入序列建立一棵平衡二叉树,求出建立的平衡二叉树的树根。输入输入一组测试数据。数据的第1行给出一个正整数N(n 输出输出平衡二叉树的树根。示例输入588 70 61 96 120示例输出70提示 #include #include struct node{ struc原创 2016-08-11 16:11:50 · 749 阅读 · 0 评论 -
数据结构实验之查找三:树的种类统计(二叉排序树)
题目描述随着卫星成像技术的应用,自然资源研究机构可以识别每一个棵树的种类。请编写程序帮助研究人员统计每种树的数量,计算每种树占总数的百分比。输入输入一组测试数据。数据的第1行给出一个正整数N (n 输出按字典序输出各种树的种类名称和它占的百分比,中间以空格间隔,小数点后保留两位小数。示例输入2This is an Appletreet原创 2016-08-11 09:53:47 · 798 阅读 · 0 评论 -
树结构练习——判断给定森林中有多少棵树(dfs)
题目描述 众人皆知,在编程领域中,C++是一门非常重要的语言,不仅仅因为其强大的功能,还因为它是很多其他面向对象语言的祖先和典范。不过这世上几乎没什么东西是完美的,C++也不例外,多继承结构在带来强大功能的同时也给软件设计和维护带来了很多困难。为此,在java语言中,只允许单继承结构,并采用接口来模拟多继承。KK最近获得了一份java编写的迷你游戏的源代码,他对这份代码非常感兴趣。这份ja原创 2016-08-11 09:03:23 · 499 阅读 · 0 评论 -
数据结构实验之查找一:二叉排序树
题目描述对应给定的一个序列可以唯一确定一棵二叉排序树。然而,一棵给定的二叉排序树却可以由多种不同的序列得到。例如分别按照序列{3,1,4}和{3,4,1}插入初始为空的二叉排序树,都得到一样的结果。你的任务书对于输入的各种序列,判断它们是否能生成一样的二叉排序树。输入输入包含若干组测试数据。每组数据的第1行给出两个正整数N (n 简单起见,我们保证每个插入序列都是1到N原创 2016-08-10 20:51:39 · 373 阅读 · 0 评论 -
树结构练习——排序二叉树的中序遍历
题目描述在树结构中,有一种特殊的二叉树叫做排序二叉树,直观的理解就是——(1).每个节点中包含有一个关键值 (2).任意一个节点的左子树(如果存在的话)的关键值小于该节点的关键值 (3).任意一个节点的右子树(如果存在的话)的关键值大于该节点的关键值。现给定一组数据,请你对这组数据按给定顺序建立一棵排序二叉树,并输出其中序遍历的结果。 输入输入包含多组数据,每组原创 2016-08-10 20:35:25 · 288 阅读 · 0 评论 -
二叉排序树
题目描述二叉排序树的定义是:或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。 今天我们要判断两序列是否为同一二叉排序树输入开始一个数n,(1接下去一行是一个序列,序列长度小于10,包含(0~9)的数字,没有重复数原创 2016-08-10 20:16:00 · 491 阅读 · 0 评论 -
顺序存储的二叉树的最近的公共祖先问题
设顺序存储的二叉树中有编号为ii和jj的两个结点,请设计算法求出它们最近的公共祖先结点的编号和值。输入格式:输入第1行给出正整数nn(\le 1000≤1000),即顺序存储的最大容量;第2行给出nn个非负整数,其间以空格分隔。其中0代表二叉树中的空结点(如果第1个结点为0,则代表一棵空树);第3行给出一对结点编号ii和jj。题目保证输入正确对应一棵二叉树,且1\le i,j原创 2016-08-10 09:54:17 · 1010 阅读 · 0 评论 -
树的同构
题目描述给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。图1 图2现给定两棵树,请你判断它们是否是同构的。输入 输入数据包含多组,每组数据给出2棵二叉树的信息。对于原创 2016-08-10 08:48:17 · 1165 阅读 · 0 评论 -
求二叉树的深度
题目描述已知一颗二叉树的中序遍历序列和后序遍历序列,求二叉树的深度。输入输入数据有多组,输入T,代表有T组数据。每组数据包括两个长度小于50的字符串,第一个字符串表示二叉树的中序遍历,第二个表示二叉树的后序遍历。输出输出二叉树的深度。示例输入2dbgeafcdgebfcalnixulinux示例输出43提示#in原创 2016-08-09 15:25:41 · 447 阅读 · 0 评论 -
数据结构实验之求二叉树后序遍历和层次遍历
题目描述 已知一棵二叉树的前序遍历和中序遍历,求二叉树的后序遍历。输入 输入数据有多组,第一行是一个整数t (t输出每组第一行输出二叉树的后序遍历序列,第二行输出二叉树的层次遍历序列示例输入2abdegcfdbgeafcxnliulnixu示例输出dgebfcaabcdefglinuxxnuli提示#include #i原创 2016-08-09 10:55:37 · 313 阅读 · 0 评论 -
还原二叉树
题目描述给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。输入输入数据有多组,每组数据第一行输入1个正整数N(1 为树中结点总数,随后2行先后给出先序和中序遍历序列,均是长度为N的不包含重复英文字母(区分大小写)的字符串。输出 输出一个整数,即该二叉树的高度。示例输入9 ABDFGHIECFDHGIBEAC示例输出原创 2016-08-09 10:35:03 · 461 阅读 · 0 评论 -
数据结构实验之二叉树七:叶子问题
题目描述已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立该二叉树并按从上到下从左到右的顺序输出该二叉树的所有叶子结点。输入 输入数据有多行,每一行是一个长度小于50个字符的字符串。输出 按从上到下从左到右的顺序输出二叉树的叶子结点。示例输入abd,,eg,,,cf,,,xnl,,i,,u,,示例输出原创 2016-08-09 08:50:42 · 300 阅读 · 0 评论 -
数据结构实验之二叉树五:层序遍历
题目描述已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立二叉树并求二叉树的层次遍历序列。输入 输入数据有多行,第一行是一个整数t (t,代表有t行测试数据。每行是一个长度小于50个字符的字符串。输出 输出二叉树的层次遍历序列。示例输入2abd,,eg,,,cf,,,xnl,,i,,u,,示例输出abc原创 2016-08-08 17:09:23 · 464 阅读 · 0 评论 -
数据结构实验之二叉树的建立与遍历
题目描述 已知一个按先序序列输入的字符序列,如abc,,de,g,,f,,,(其中逗号表示空节点)。请建立二叉树并按中序和后序方式遍历二叉树,最后求出叶子节点个数和二叉树深度。 输入 输入一个长度小于50个字符的字符串。输出输出共有4行:第1行输出中序遍历序列;第2行输出后序遍历序列;第3行输出叶子节点个数;第4行输出二叉树深度。示例输入abc...原创 2016-08-08 16:19:18 · 274 阅读 · 0 评论 -
树-堆结构练习——合并果子之哈夫曼树
题目描述 在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所消耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力原创 2016-08-12 14:26:50 · 354 阅读 · 0 评论