
数据结构 - 二叉树
是Elie呀
人生苦短,莫忘初衷;凡事相信,凡事期待。认真做事,认真做人!翁恺老师寄语:“其实学习终归是一件痛苦的事情,所以呢面对学习你还是得要认真,用功,努力地去学习。享受的是什么?是学习之后获得的那种成就,快乐是从成就中来的。”
展开
-
3341数据结构实验之二叉树二:遍历二叉树
数据结构实验之二叉树二:遍历二叉树 Problem Description 已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并按中序和后序的方式遍历该二叉树。Input 连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。Output 每组输入数据对应输出2行: 第1行输出中序遍历序列; 第2行输出后序原创 2017-08-08 12:28:55 · 375 阅读 · 0 评论 -
顺序存储的二叉树的最近的公共祖先问题
设顺序存储的二叉树中有编号为i和j的两个结点,请设计算法求出它们最近的公共祖先结点的编号和值。输入格式:输入第1行给出正整数n(≤),即顺序存储的最大容量;第2行给出n个非负整数,其间以空格分隔。其中0代表二叉树中的空结点(如果第1个结点为0,则代表一棵空树);第3行给出一对结点编号i和j。题目保证输入正确对应一棵二叉树,且1。输出格式:如果i或j对应的是空结点,则输出ERROR: T[x] is...原创 2018-03-02 07:41:53 · 963 阅读 · 0 评论 -
(结构数组表示二叉树+堆+二叉排序树)笛卡尔树
笛卡尔树是一种特殊的二叉树,其结点包含两个关键字K1和K2。首先笛卡尔树是关于K1的二叉搜索树,即结点左子树的所有K1值都比该结点的K1值小,右子树则大。其次所有结点的K2关键字满足优先队列(不妨设为最小堆)的顺序要求,即该结点的K2值比其子树中所有结点的K2值小。给定一棵二叉树,请判断该树是否笛卡尔树。输入格式:输入首先给出正整数N(≤1000),为树中结点的个数。随后N行,每行给出一个结点的信...原创 2018-02-21 22:15:04 · 371 阅读 · 0 评论 -
是否二叉搜索树
点击一下,获得更多解法本题要求实现函数,判断给定二叉树是否二叉搜索树。函数接口定义:bool IsBST ( BinTree T );其中BinTree结构定义如下:typedef struct TNode *Position;typedef Position BinTree;struct TNode{ ElementType Data; BinTree Left; ...原创 2017-12-07 19:48:48 · 1334 阅读 · 0 评论 -
(结构数组表示二叉树)树的同构
给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。图1图2现给定两棵树,请你判断它们是否是同构的。输入格式:输入给出2棵二叉树树的信息。对于每棵树,首先在一行中给出一个非负整数N (≤),即该树的结点数(此时假设结点从0到N−1编...原创 2018-02-02 19:34:40 · 589 阅读 · 0 评论 -
(map或二叉搜索树)树种统计
随着卫星成像技术的应用,自然资源研究机构可以识别每一棵树的种类。请编写程序帮助研究人员统计每种树的数量,计算每种树占总数的百分比。输入格式:输入首先给出正整数N(≤),随后N行,每行给出卫星观测到的一棵树的种类名称。种类名称由不超过30个英文字母和空格组成(大小写不区分)。输出格式:按字典序递增输出各种树的种类名称及其所占总数的百分比,其间以空格分隔,保留小数点后4位。输...原创 2018-02-15 17:26:33 · 522 阅读 · 0 评论 -
(判断二叉树是完全二叉树)L3-010. 是否完全二叉搜索树
L3-010. 是否完全二叉搜索树时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越将一系列给定数字顺序插入一个初始为空的二叉搜索树(定义为左子树键值大,右子树键值小),你需要判断最后的树是否一棵完全二叉树,并且给出其层序遍历的结果。输入格式:输入第一行给出一个不超过20的正整数N;第二行给出N个互不相同的正整数,其间以空格分隔。输出格式:将输入的...原创 2018-02-03 19:27:03 · 244 阅读 · 0 评论 -
2136数据结构实验之二叉树的建立与遍历
数据结构实验之二叉树的建立与遍历Problem Description 已知一个按先序序列输入的字符序列,如abc,,de,g,,f,,,(其中逗号表示空节点)。请建立二叉树并按中序和后序方式遍历二叉树,最后求出叶子节点个数和二叉树深度。Input 输入一个长度小于50个字符的字符串。 Output 输出共有4行: 第1行输出中序遍历序列;原创 2017-08-09 12:16:39 · 285 阅读 · 0 评论 -
3345数据结构实验之二叉树六:哈夫曼编码
数据结构实验之二叉树六:哈夫曼编码 Problem Description 字符的编码方式有多种,除了大家熟悉的ASCII编码,哈夫曼编码(Huffman Coding)也是一种编码方式,它是可变字长编码。该方法完全依据字符出现概率来构造出平均长度最短的编码,称之为最优编码。哈夫曼编码常被用于数据文件压缩中,其压缩率通常在20%~90%之间。你的任务是对从键盘输入的一个字符串求出原创 2017-08-14 17:31:59 · 698 阅读 · 0 评论 -
是否同一棵二叉搜索树
给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两个正整数N (≤)和L,分别是每个序列插入元素的个数和需原创 2018-02-02 19:55:13 · 243 阅读 · 0 评论 -
(建二叉排序树、是否为同一二叉排序树)2482二叉排序树
二叉排序树Problem Description 二叉排序树的定义是:或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。 今天我们要判断两序列是否为同一二叉排序树Input 开始一个数n,(1 接下去一行是一原创 2017-08-12 10:30:33 · 416 阅读 · 0 评论 -
(后序+中序建树)根据后序和中序遍历输出先序遍历
本题要求根据给定的一棵二叉树的后序遍历和中序遍历结果,输出该树的先序遍历结果。输入格式:第一行给出正整数N(≤),是树中结点的个数。随后两行,每行给出N个整数,分别对应后序遍历和中序遍历结果,数字间以空格分隔。题目保证输入正确对应一棵二叉树。输出格式:在一行中输出Preorder:以及该树的先序遍历结果。数字间有1个空格,行末不得有多余空格。输入样例:7原创 2018-02-01 22:38:24 · 1387 阅读 · 0 评论 -
(先序+中序建树)2137数据结构实验之求二叉树后序遍历和层次遍历
数据结构实验之求二叉树后序遍历和层次遍历 Problem Description 已知一棵二叉树的前序遍历和中序遍历,求二叉树的后序遍历和层序遍历。Input 输入数据有多组,第一行是一个整数t (tOutput 每组第一行输出二叉树的后序遍历序列,第二行输出二叉树的层次遍历序列。Example Input2abdegcfdbgeaf原创 2017-08-08 17:39:17 · 866 阅读 · 0 评论 -
3342数据结构实验之二叉树三:统计叶子数
数据结构实验之二叉树三:统计叶子数Problem Description 已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并求二叉树的叶子结点个数。Input 连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。Output 输出二叉树的叶子结点个数。Example Inputabc,,de,g,,f,,,E原创 2017-08-09 20:55:30 · 524 阅读 · 0 评论 -
二叉树算法
#include <iostream>#include <stdio.h>using namespace std;typedef struct BiTNode{ char data; struct BiTNode *lchild,*rchild;}BiTNode,*BiTree;BiTree createBiTree(BiTree T){ char ch; c原创 2017-11-09 16:55:28 · 246 阅读 · 0 评论 -
(字符串处理,建树)二叉搜索树的结构
二叉搜索树或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值;若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值;它的左、右子树也分别为二叉搜索树。(摘自百度百科)给定一系列互不相等的整数,将它们顺次插入一棵初始为空的二叉搜索树,然后对结果树的结构进行描述。你需要能判断给定的描述是否正确。例如将{ 2 4 1 3 0 }插入后,得到...原创 2018-03-10 10:05:59 · 1253 阅读 · 0 评论