PTA团体程序设计天梯赛-练习集 L2完全二叉树的层序遍历(递归)

简介: PTA团体程序设计天梯赛-练习集 L2完全二叉树的层序遍历(递归)

题意

完全二叉树的后序序列,求二叉树的层次遍历。

思路

后序遍历是左子树 右子树 根

用顺序存储表示完全二叉树时,数组就是层次遍历的顺序。

考虑p输入的时候按照后序遍历的顺序递归建树。

代码

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e5+10;
int n,a[35];
void dfs(int u){
  if(u>n) return ;
  dfs(2*u);
  dfs(2*u+1);
  cin>>a[u];
}
int main(){
  //后序:左子树 右子树 根节点
  cin>>n;
  dfs(1);
  for(int i=1;i<=n;i++){
    cout<<a[i];
    if(i==n) puts("");
    else cout<<" ";
  }
  return 0;
}
目录
相关文章
|
9月前
|
存储 缓存 算法
5.链表导论心法
5.链表导论心法
79 1
|
8月前
【洛谷 P1002】[NOIP2002 普及组] 过河卒 题解(递归+记忆化搜索)
`NOIP2002`普及组的过河卒问题是一个棋盘路径计数挑战。卒从$(0,0)$出发到$(n,m)$,只能向下或向右移动,马在$(c1,c2)$固定,控制某些点。任务是计算不受马阻挡的路径数。输入是目标和马的位置,输出是路径总数。使用动态规划和记忆化搜索避免重复计算,样例输入$(6,6,3,3)$输出$6$。代码中定义了$f(x,y)$计算$(x,y)$处的路径数,利用边界条件和递推关系计算。
93 0
PTA浙江大学数据结构习题——第二周
PTA浙江大学数据结构习题——第二周
73 0
|
C语言 C++
PTA团体程序设计天梯赛-练习集: L1-050 倒数第N个字符串 ( 15分 )
给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L,从 L 个 a 开始,以 1 为步长递增。例如当 L 为 3 时,序列为 { aaa, aab, aac, ..., aaz, aba, abb, ..., abz, ..., zzz }。这个序列的倒数第27个字符串就是 zyz。对于任意给定的 L,本题要求你给出对应序列倒数第 N 个字符串。 输入格式: 输入在一行中给出两个正整数 L(2 ≤ L ≤ 6)和 N(≤105)。 输出格式: 在一行中输出对应序列倒数第 N 个字符串。题目保证这个字符串是存在的。 输入样例:
196 0
|
存储 移动开发
【蓝桥杯集训·每日一题】AcWing 1497. 树的遍历
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 递归
83 0
|
存储
【2020团体程序设计天梯赛】L2-3 完全二叉树的层序遍历(后序遍历转层次遍历)
【2020团体程序设计天梯赛】L2-3 完全二叉树的层序遍历(后序遍历转层次遍历)
214 1
|
机器学习/深度学习 C++
【力扣·每日一题】1036. 逃离大迷宫 (C++ bfs 思维)
【力扣·每日一题】1036. 逃离大迷宫 (C++ bfs 思维)
111 0
【力扣·每日一题】1036. 逃离大迷宫 (C++ bfs 思维)
7-11 玩转二叉树 —— 程序设计天梯赛
给定一棵二叉树的中序遍历和前序遍历,请你先将树做个镜面反转,再输出反转后的层序遍历的序列。所谓镜面反转,是指将所有非叶结点的左右孩子对换。这里假设键值都是互不相等的正整数。
113 0
7-11 玩转二叉树 —— 程序设计天梯赛
|
存储 算法 vr&ar
【力扣·周赛】第 284 场周赛(C++ | 枚举 | 分类讨论 | 最短路 | 建反图)
【力扣·周赛】第 284 场周赛(C++ | 枚举 | 分类讨论 | 最短路 | 建反图)
143 0
【力扣·周赛】第 284 场周赛(C++ | 枚举 | 分类讨论 | 最短路 | 建反图)
【2022团体程序设计天梯赛】GPLT2022,L1~L2部分(PTA,L1-081~L1-088,L2-041~L2-044)题解代码
【2022团体程序设计天梯赛】GPLT2022,L1~L2部分(PTA,L1-081~L1-088,L2-041~L2-044)题解代码
488 0