天梯赛练习题L2-006. 树的遍历】的更多相关文章

L2-006. 树的遍历 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列.这里假设键值都是互不相等的正整数. 输入格式: 输入第一行给出一个正整数N(<=30),是二叉树中结点的个数.第二行给出其后序遍历序列.第三行给出其中序遍历序列.数字间以空格分隔. 输出格式: 在一行中输出该树的层序遍历的序列.数字间以1个空格分隔,行首尾不得有多余空格. 输入样例: 7 2…
L3-007. 天梯地图 时间限制 300 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 本题要求你实现一个天梯赛专属在线地图,队员输入自己学校所在地和赛场地点后,该地图应该推荐两条路线:一条是最快到达路线:一条是最短距离的路线.题目保证对任意的查询请求,地图上都至少存在一条可达路线. 输入格式: 输入在第一行给出两个正整数N(2 <= N <=500)和M,分别为地图中所有标记地点的个数和连接地点的道路条数.随后M行,每行按如下格式给出…
题目链接 已知一棵树的后序遍历顺序和中序遍历顺序,求层次遍历的顺序: 树的四种遍历: 先序遍历:先访问根节点,再访问左子树,最后访问右子树 中序遍历:先访问左子树,再访问根节点,最后访问右子树 后序遍历:先访问左子树,再访问右子树,最后访问根节点 层次遍历:一层一层的访问:   完全二叉树的节点关系,在层次遍历中假设根节点的编号是n,左子树的根节点是2*n,右边是2*n+1:   本题是已知后序a和中序b:  由于后序遍历最后访问根节点所以,数组a的最后一个节点一定是根节点,然后在数组b中找到根…
L3-002. 堆栈 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 大家都知道“堆栈”是一种“先进后出”的线性结构,基本操作有“入栈”(将新元素插入栈顶)和“出栈”(将栈顶元素的值返回并从堆栈中将其删除).现请你实现一种特殊的堆栈,它多了一种操作叫“查中值”,即返回堆栈中所有元素的中值.对于N个元素,若N是偶数,则中值定义为第N/2个最小元:若N是奇数,则中值定义为第(N+1)/2个最小元. 输入格式: 输入第一行给出正整…
7-2 列出连通集 (25 分) 给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集.假设顶点从0到N−1编号.进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点. 输入样例: 8 6 0 7 0 1 2 0 4 1 2 4 3 5 输出样例: { 0 1 4 2 7 } { 3 5 } { 6 } { 0 1 2 7 4 } { 3 5 } { 6 }思路:先dfs,再bfs即可,但是注意在bfs之前要把vis数组再一次的初始化. #includ…
L3-010. 是否完全二叉搜索树 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 将一系列给定数字顺序插入一个初始为空的二叉搜索树(定义为左子树键值大,右子树键值小),你需要判断最后的树是否一棵完全二叉树,并且给出其层序遍历的结果. 输入格式: 输入第一行给出一个不超过20的正整数N:第二行给出N个互不相同的正整数,其间以空格分隔. 输出格式: 将输入的N个正整数顺序插入一个初始为空的二叉搜索树.在第一行中输出结果树的层序…
题目:一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是完美二叉树.对于深度为 D 的,有 N 个结点的二叉树,若其结点对应于相同深度完美二叉树的层序遍历的前 N 个结点,这样的树就是完全二叉树. 给定一棵完全二叉树的后序遍历,请你给出这棵树的层序遍历结果. 输入格式:输入在第一行中给出正整数 N(≤30),即树中结点个数.第二行给出后序遍历序列,为 N 个不超过 100 的正整数.同一行中所有数字都以空格分隔. 输出格式:在一行中输出该树的层序遍历序列.所有数字都以 1 个空格分隔…
7-1 水仙花数 (20 分) 水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身.例如:1. 本题要求编写程序,计算所有N位水仙花数. 输入样例: 3 输出样例: 153 370 371 407 思路:遍历100-999,每次都按题意检测一下是否满足,满足则输出,但是这题坑点在不能直接用pow()函数,具体的可以百度pow()函数,主要是它调用的是double 类型参数,会导致精度转换的时候出现问题(个人编译是这样的,输入3会少了153这个答案),自己手写一个pow…
#include<bits/stdc++.h> using namespace std; typedef int daTp;//datatype typedef struct BTNode *position; typedef position BTree; ; struct BTNode { daTp data; position lChild,rChild; }; BTree build(daTp in[],daTp post[],int n)//利用中序和后序遍历生成二叉树 { BTre…
L3-011. 直捣黄龙 时间限制 150 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 本题是一部战争大片 —— 你需要从己方大本营出发,一路攻城略地杀到敌方大本营.首先时间就是生命,所以你必须选择合适的路径,以最快的速度占领敌方大本营.当这样的路径不唯一时,要求选择可以沿途解放最多城镇的路径.若这样的路径也不唯一,则选择可以有效杀伤最多敌军的路径. 输入格式: 输入第一行给出2个正整数N(2 <= N <= 200,城镇总数)和K(城…