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;
}
目录
相关文章
|
11月前
|
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 个字符串。题目保证这个字符串是存在的。 输入样例:
130 0
|
11月前
|
IDE Java 开发工具
[软考]之树与二叉树的遍历
[软考]之树与二叉树的遍历
57 0
|
11月前
[软考]之树和二叉树
[软考]之树和二叉树
57 0
三道好题分享
上课睡觉 - AcWing题库
61 0
|
算法 JavaScript 前端开发
日拱算法:解两道“杨辉三角”题
什么是“杨辉三角”,想必大家并不陌生~~ 在「杨辉三角」中,每个数是它左上方和右上方的数的和。
|
算法
【递归与递推】洛谷[NOIP2002 普及组] 过河卒
前言 本题来自洛谷P1002. 题目链接:[NOIP2002 普及组] 过河卒 - 洛谷
139 0
|
存储
【2020团体程序设计天梯赛】L2-3 完全二叉树的层序遍历(后序遍历转层次遍历)
【2020团体程序设计天梯赛】L2-3 完全二叉树的层序遍历(后序遍历转层次遍历)
165 1
|
存储 人工智能
PTA团体程序设计天梯赛-练习集 L3-010 是否完全二叉搜索树(顺序存储)
PTA团体程序设计天梯赛-练习集 L3-010 是否完全二叉搜索树(顺序存储)
86 0
7-11 玩转二叉树 —— 程序设计天梯赛
给定一棵二叉树的中序遍历和前序遍历,请你先将树做个镜面反转,再输出反转后的层序遍历的序列。所谓镜面反转,是指将所有非叶结点的左右孩子对换。这里假设键值都是互不相等的正整数。
79 0
7-11 玩转二叉树 —— 程序设计天梯赛
|
C++
【力扣·每日一题】913. 猫和老鼠(C++ 记忆化搜索 博弈)
【力扣·每日一题】913. 猫和老鼠(C++ 记忆化搜索 博弈)
166 0
【力扣·每日一题】913. 猫和老鼠(C++ 记忆化搜索 博弈)