树和二叉树
waitingAC
这个作者很懒,什么都没留下…
展开
-
树结构练习——排序二叉树的中序遍历
Problem Description 在树结构中,有一种特殊的二叉树叫做排序二叉树,直观的理解就是——(1).每个节点中包含有一个关键值 (2).任意一个节点的左子树(如果存在的话)的关键值小于该节点的关键值 (3).任意一个节点的右子树(如果存在的话)的关键值大于该节点的关键值。现给定一组数据,请你对这组数据按给定顺序建立一棵排序二叉树,并输出其中序遍历的结果。 Input 输入包...原创 2018-08-09 12:26:33 · 819 阅读 · 0 评论 -
线索化二叉树
先序序列:abc,,de,g,,f,,, 线索化输出:cbegdfa #include <stdio.h> #include <stdlib.h> typedef struct node { char ch; struct node *lc; struct node *rc; int ltag; int rtag; }BiTree...原创 2018-11-03 17:09:45 · 285 阅读 · 0 评论 -
数据结构实验之求二叉树后序遍历和层次遍历
Problem Description 已知一棵二叉树的前序遍历和中序遍历,求二叉树的后序遍历和层序遍历。 Input 输入数据有多组,第一行是一个整数t (t<1000),代表有t组测试数据。每组包括两个长度小于50 的字符串,第一个字符串表示二叉树的先序遍历序列,第二个字符串表示二叉树的中序遍历序列。 Output 每组第一行输出二叉树的后序遍历序列,第二行输出二叉树的层次...原创 2018-08-08 16:30:20 · 155 阅读 · 0 评论 -
数据结构实验之二叉树二:遍历二叉树
Problem Description 已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并按中序和后序的方式遍历该二叉树。 Input 连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。 Output 每组输入数据对应输出2行: 第1行输出中序遍历序列; 第2行输出后序遍历序列。 Sample Input ...原创 2018-08-08 15:30:18 · 177 阅读 · 0 评论 -
数据结构实验之二叉树一:树的同构
Problem Description 给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。 图1 图2 现给定两棵树,请你判断它们是否是同构的。 Input 输入数据包含多组,每组数据给出2棵二叉树的信...原创 2018-08-08 15:07:52 · 167 阅读 · 0 评论 -
数据结构实验之二叉树七:叶子问题
Problem Description 已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立该二叉树并按从上到下从左到右的顺序输出该二叉树的所有叶子结点。 Input 输入数据有多行,每一行是一个长度小于50个字符的字符串。 Output 按从上到下从左到右的顺序输出二叉树的叶子结点。 Sample Input abd,,eg,,,cf,,...原创 2018-08-10 08:51:30 · 266 阅读 · 0 评论 -
数据结构实验之二叉树五:层序遍历
Problem Description 已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立二叉树并求二叉树的层次遍历序列。 Input 输入数据有多行,第一行是一个整数t (t<1000),代表有t行测试数据。每行是一个长度小于50个字符的字符串。 Output 输出二叉树的层次遍历序列。 Sample Input 2 abd,,e...原创 2018-08-10 08:45:16 · 322 阅读 · 0 评论 -
数据结构实验之二叉树四:(先序中序)还原二叉树
Problem Description 给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。 Input 输入数据有多组,每组数据第一行输入1个正整数N(1 <= N <= 50)为树中结点总数,随后2行先后给出先序和中序遍历序列,均是长度为N的不包含重复英文字母(区分大小写)的字符串。 Output 输出一个整数,即该二叉树的高度。 Sample ...原创 2018-08-09 20:15:16 · 145 阅读 · 0 评论 -
数据结构实验之二叉树三:统计叶子数
Problem Description 已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并求二叉树的叶子结点个数。 Input 连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。 Output 输出二叉树的叶子结点个数。 Sample Input abc,,de,g,,f,,, Sample Output ...原创 2018-08-09 14:16:43 · 146 阅读 · 0 评论 -
数据结构实验之二叉树的建立与遍历
Problem Description 已知一个按先序序列输入的字符序列,如abc,,de,g,,f,,,(其中逗号表示空节点)。请建立二叉树并按中序和后序方式遍历二叉树,最后求出叶子节点个数和二叉树深度。 Input 输入一个长度小于50个字符的字符串。 Output 输出共有4行: 第1行输出中序遍历序列; 第2行输出后序遍历序列; 第3行输出叶子节点个数; 第...原创 2018-08-09 13:59:36 · 322 阅读 · 0 评论 -
数据结构实验之二叉树六:哈夫曼编码
Problem Description 字符的编码方式有多种,除了大家熟悉的ASCII编码,哈夫曼编码(Huffman Coding)也是一种编码方式,它是可变字长编码。该方法完全依据字符出现概率来构造出平均长度最短的编码,称之为最优编码。哈夫曼编码常被用于数据文件压缩中,其压缩率通常在20%~90%之间。你的任务是对从键盘输入的一个字符串求出它的ASCII编码长度和哈夫曼编码长度的比值。 I...原创 2018-11-14 20:26:11 · 435 阅读 · 0 评论