![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
二叉树
cherish__lin
I want to be better!
展开
-
数据结构实验之二叉树二:遍历二叉树(中序,后序)
Problem Description已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并按中序和后序的方式遍历该二叉树。Input连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。Output每组输入数据对应输出2行:第1行输出中序遍历序列;第2行输出后序遍历序列。 Sample Input...原创 2019-02-24 21:56:32 · 433 阅读 · 0 评论 -
树结构练习——排序二叉树的中序遍历
Problem Description在树结构中,有一种特殊的二叉树叫做排序二叉树,直观的理解就是——(1).每个节点中包含有一个关键值 (2).任意一个节点的左子树(如果存在的话)的关键值小于该节点的关键值 (3).任意一个节点的右子树(如果存在的话)的关键值大于该节点的关键值。现给定一组数据,请你对这组数据按给定顺序建立一棵排序二叉树,并输出其中序遍历的结果。 Input输入包...原创 2019-02-26 13:47:47 · 614 阅读 · 0 评论 -
二叉排序树(判断是否同树)
Problem Description二叉排序树的定义是:或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。 今天我们要判断两序列是否为同一二叉排序树Input开始一个数n,(1<=n<=20) 表示有n个需要判断,n...原创 2019-02-26 14:13:25 · 356 阅读 · 0 评论 -
数据结构实验之查找一:二叉排序树
Problem Description对应给定的一个序列可以唯一确定一棵二叉排序树。然而,一棵给定的二叉排序树却可以由多种不同的序列得到。例如分别按照序列{3,1,4}和{3,4,1}插入初始为空的二叉排序树,都得到一样的结果。你的任务书对于输入的各种序列,判断它们是否能生成一样的二叉排序树。Input输入包含若干组测试数据。每组数据的第1行给出两个正整数N (n < = 10)...原创 2019-02-26 14:24:59 · 288 阅读 · 0 评论 -
迷失の搜索树(先序->后序)
Problem Description小璐在机缘巧合之下获得了一个二叉搜索树,这个二叉搜索树恰好有n个节点,每个节点有一个权值,每个节点的权值都在[1,n]这个区间内,并且两两不相同,真是优美的性质啊但是命运的不公又让她失去了这个二叉搜索树幸运的是,她还记得自己丢失的二叉搜索树的前序遍历序列。在丢了二叉搜索树之后,小璐无比想念她的这个树的后序遍历那么问题来了,聪明的你在知道这个...原创 2019-02-26 14:34:12 · 162 阅读 · 0 评论 -
L2-006 树的遍历 (25 分)
给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列。这里假设键值都是互不相等的正整数。输入格式:输入第一行给出一个正整数N(≤30),是二叉树中结点的个数。第二行给出其后序遍历序列。第三行给出其中序遍历序列。数字间以空格分隔。输出格式:在一行中输出该树的层序遍历的序列。数字间以1个空格分隔,行首尾不得有多余空格。输入样例:72 3 1 5 7 6 41 2 ...原创 2019-03-16 20:29:05 · 1471 阅读 · 0 评论 -
L2-011 玩转二叉树 (25 分)
给定一棵二叉树的中序遍历和前序遍历,请你先将树做个镜面反转,再输出反转后的层序遍历的序列。所谓镜面反转,是指将所有非叶结点的左右孩子对换。这里假设键值都是互不相等的正整数。输入格式:输入第一行给出一个正整数N(≤30),是二叉树中结点的个数。第二行给出其中序遍历序列。第三行给出其前序遍历序列。数字间以空格分隔。输出格式:在一行中输出该树反转后的层序遍历的序列。数字间以1个空格分隔,...原创 2019-03-16 20:58:20 · 516 阅读 · 0 评论 -
L3-010 是否完全二叉搜索树 (30 分)
将一系列给定数字顺序插入一个初始为空的二叉搜索树(定义为左子树键值大,右子树键值小),你需要判断最后的树是否一棵完全二叉树,并且给出其层序遍历的结果。输入格式:输入第一行给出一个不超过20的正整数N;第二行给出N个互不相同的正整数,其间以空格分隔。输出格式:将输入的N个正整数顺序插入一个初始为空的二叉搜索树。在第一行中输出结果树的层序遍历结果,数字间以1个空格分隔,行的首尾不得有多...原创 2019-03-22 22:54:50 · 453 阅读 · 0 评论 -
L3-016 二叉搜索树的结构 (30 分)
二叉搜索树或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值;若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值;它的左、右子树也分别为二叉搜索树。(摘自百度百科)给定一系列互不相等的整数,将它们顺次插入一棵初始为空的二叉搜索树,然后对结果树的结构进行描述。你需要能判断给定的描述是否正确。例如将{ 2 4 1 3 0 }插入后,...原创 2019-03-26 13:44:13 · 972 阅读 · 0 评论 -
7-14 二叉搜索树的最近公共祖先 (30 分)
给定一棵二叉搜索树的先序遍历序列,要求你找出任意两结点的最近公共祖先结点(简称 LCA)。输入格式:输入的第一行给出两个正整数:待查询的结点对数 M(≤1 000)和二叉搜索树中结点个数 N(≤10 000)。随后一行给出 N 个不同的整数,为二叉搜索树的先序遍历序列。最后 M 行,每行给出一对整数键值 U 和 V。所有键值都在整型int范围内。输出格式:对每一对给定的 U 和...原创 2019-03-27 07:26:22 · 6544 阅读 · 0 评论 -
二叉树的建立与遍历小结
好久前就学完二叉树了,不过不善总结,到现在才温习一遍,感觉全是模板啊,有点难的就是那个树的同构~。首先我们可以根据给出的字串建立起二叉树(如","为空节点特判),我们还可以根据(先序+中序)或者(中序+后序)得到唯一的二叉树,当然了(先序+后序)得到可能的二叉树种数也是题目,不过我还没遇到,这里就不写了。建立好二叉树后我们可以先序(根左右),中序(左根右),后序(左右根),层序,来遍历二叉树...原创 2019-02-25 16:58:43 · 1946 阅读 · 0 评论 -
数据结构实验之二叉树的建立与遍历(先序->中序+后序+叶子+深度)
Problem Description 已知一个按先序序列输入的字符序列,如abc,,de,g,,f,,,(其中逗号表示空节点)。请建立二叉树并按中序和后序方式遍历二叉树,最后求出叶子节点个数和二叉树深度。 Input 输入一个长度小于50个字符的字符串。Output输出共有4行:第1行输出中序遍历序列;第2行输出后序遍历序列;第3行输出叶子节点个数;第...原创 2019-02-25 13:37:12 · 1211 阅读 · 0 评论 -
数据结构上机测试4.1:二叉树的遍历与应用1(先序+中序==后序)
Problem Description输入二叉树的先序遍历序列和中序遍历序列,输出该二叉树的后序遍历序列。Input第一行输入二叉树的先序遍历序列;第二行输入二叉树的中序遍历序列。Output输出该二叉树的后序遍历序列。Sample InputABDCEFBDAECFSample OutputDBEFCAHintSource题解:根据先序和中...原创 2019-02-24 22:20:22 · 286 阅读 · 0 评论 -
求二叉树的先序遍历(中序+后序==先序)
Problem Description 已知一棵二叉树的中序遍历和后序遍历,求二叉树的先序遍历Input 输入数据有多组,第一行是一个整数t (t<1000),代表有t组测试数据。每组包括两个长度小于50 的字符串,第一个字符串表示二叉树的中序遍历序列,第二个字符串表示二叉树的后序遍历序列。 Output 输出二叉树的先序遍历序列Sample Input2db...原创 2019-02-24 22:37:59 · 394 阅读 · 0 评论 -
数据结构实验之二叉树五:层序遍历
Problem Description已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立二叉树并求二叉树的层次遍历序列。Input 输入数据有多行,第一行是一个整数t (t<1000),代表有t行测试数据。每行是一个长度小于50个字符的字符串。Output 输出二叉树的层次遍历序列。Sample Input2abd,,e...原创 2019-02-24 22:58:02 · 225 阅读 · 0 评论 -
求二叉树的层次遍历(前序+中序==层次)
Problem Description已知一颗二叉树的前序遍历和中序遍历,求二叉树的层次遍历。Input输入数据有多组,输入T,代表有T组测试数据。每组数据有两个长度小于50的字符串,第一个字符串为前序遍历,第二个为中序遍历。Output每组输出这颗二叉树的层次遍历。Sample Input2abcbacabdecdbeacSample Output...原创 2019-02-24 23:02:53 · 1010 阅读 · 0 评论 -
数据结构实验之求二叉树后序遍历和层次遍历(先序+中序==后序+层次)
Problem Description 已知一棵二叉树的前序遍历和中序遍历,求二叉树的后序遍历和层序遍历。Input 输入数据有多组,第一行是一个整数t (t<1000),代表有t组测试数据。每组包括两个长度小于50 的字符串,第一个字符串表示二叉树的先序遍历序列,第二个字符串表示二叉树的中序遍历序列。Output每组第一行输出二叉树的后序遍历序列,第二行输出二叉树的层次...原创 2019-02-24 23:05:23 · 964 阅读 · 1 评论 -
数据结构实验之二叉树三:统计叶子数
Problem Description已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并求二叉树的叶子结点个数。Input连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。Output输出二叉树的叶子结点个数。Sample Inputabc,,de,g,,f,,,Sample Output...原创 2019-02-24 23:35:28 · 233 阅读 · 0 评论 -
数据结构实验之二叉树四:(先序中序)还原二叉树(求二叉树高度)
Problem Description给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。Input输入数据有多组,每组数据第一行输入1个正整数N(1 <= N <= 50)为树中结点总数,随后2行先后给出先序和中序遍历序列,均是长度为N的不包含重复英文字母(区分大小写)的字符串。 Output 输出一个整数,即该二叉树的高度。Sample ...原创 2019-02-25 13:15:53 · 1571 阅读 · 0 评论 -
数据结构实验之二叉树七:叶子问题(输出叶子节点)
Problem Description已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立该二叉树并按从上到下从左到右的顺序输出该二叉树的所有叶子结点。Input 输入数据有多行,每一行是一个长度小于50个字符的字符串。Output 按从上到下从左到右的顺序输出二叉树的叶子结点。Sample Inputabd,,eg,,,cf,,...原创 2019-02-25 13:21:35 · 2604 阅读 · 0 评论 -
数据结构实验之二叉树八:(中序后序)求二叉树的深度
Problem Description已知一颗二叉树的中序遍历序列和后序遍历序列,求二叉树的深度。Input输入数据有多组,输入T,代表有T组数据。每组数据包括两个长度小于50的字符串,第一个字符串表示二叉树的中序遍历,第二个表示二叉树的后序遍历。Output输出二叉树的深度。Sample Input2dbgeafcdgebfcalnixulinuxSam...原创 2019-02-25 13:30:04 · 300 阅读 · 0 评论 -
7-10 搜索树判断 (25 分)
对于二叉搜索树,我们规定任一结点的左子树仅包含严格小于该结点的键值,而其右子树包含大于或等于该结点的键值。如果我们交换每个节点的左子树和右子树,得到的树叫做镜像二叉搜索树。现在我们给出一个整数键值序列,请编写程序判断该序列是否为某棵二叉搜索树或某镜像二叉搜索树的前序遍历序列,如果是,则输出对应二叉树的后序遍历序列。输入格式:输入的第一行包含一个正整数N(≤1000),第二行包含N个整数...原创 2019-03-27 13:30:45 · 1297 阅读 · 1 评论