![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
二叉树
文章平均质量分 83
该专栏包括的题目涉及二叉树算法。
XiaoZheng2003
博客暂时弃更
展开
-
以括号形式输出二叉树
原题题目描述输入一个二叉树的先序串,输出以括号形式表示的而叉树。如果结点的子树为空,先序串的对应位置为空格符。输入第1行:先序串 (结点数≤26,以单个大写字母表示)输出第1行:二叉树的括号形式样例输入AB#C##D##样例输出A(B(#,C(#,#)),D(#,#))注:空格用#表示分析 样例分析图这道题一看就需要用递归来做,可是千万不用被题目中疑似的数据范围坑了。题目中是说的“结点数≤26”,原创 2017-01-20 14:29:48 · 5491 阅读 · 0 评论 -
各种排序方法介绍
一、概述在c++语言中,有许多的排序方法值得我们学习,虽然有sort函数可以排序,但是在某种情况下,我们用sort函数会超时,所以就要用快速排序算法或者二分排序。本博文会给大家介绍几种排序方法。 以下给大家推荐一道题,这道题不能用sort进行排序,所以要用快速排序算法或者二分排序。7617:输出前k大的数总时间限制: 10000ms 单个测试点时间限制: 1000ms 内存限制: 65536kB描原创 2016-10-03 09:41:16 · 982 阅读 · 0 评论 -
二叉树的建立与遍历
一、原题二叉树的建立与遍历(binary-tree)题目描述给出一棵二叉树,分别输出先序、中序、后序遍历结果。输入第1行:结点数n(1以下若干行,每行3个整数,分别表示父结点、左孩子、右孩子。若没有孩子,对应的整数为0.输出第1行:树根 第2行:先序遍历结果,数字间用1个空格分开。 第3行:中序遍历结果,数字间用1个空格分开。 第4行:后序遍历结原创 2016-10-02 11:05:18 · 1506 阅读 · 0 评论 -
以先序字符串方式建立二叉树
原题题目描述输入一个二叉树的先序串,输出其后序遍历结果。如果结点的子树为空,先序串的对应位置为空格符。输入第1行:先序串(结点数≤26,以单个大写字母表示)输出第1行:后序序列样例输入AB C D 样例输出CBDA注:空格原创 2017-01-20 17:28:21 · 6577 阅读 · 0 评论 -
普通有序树的遍历
原题题目描述输入一棵普通有序树,输出该树的先根次序和后根次序。输入第1行:顶点个数n(1≤n≤200)以下含n行,其中第i行(1≤i≤n)的元素依次为结点i的数据值ai。以后各元素为结点i的儿子序列,以0结束。若ai后仅含一个0,则说明结点i为叶子。输出第1行:先根序第2行:后根序样例输入18 r 2 3 4 0 a 5 6 0 b 7 0 c 8 9 10 0 w 0 x 11 12原创 2017-01-20 16:43:39 · 4055 阅读 · 0 评论 -
二叉树的计数
原题输入第1行:二叉树的前序遍历顺序 第2行:后序遍历顺序输出第1行:1个整数,表示所有可能的二叉树的数量样例输入1ABC CBA样例输出14样例输入2ABCEDFGH ECDBHGFA样例输出24分析这道题也许你一拿到会觉得很难,甚至动起了爆搜的念头,但是这道题主要是弄清思路,其他就很简单了。由于样例一的数据太简单了,所以我们分析样例二的数据。左子树?右子树?怎么找?在先序中,左子树的根是原创 2017-01-20 17:00:39 · 1650 阅读 · 0 评论