#1935. 二叉树遍历

二叉树遍历

题目描述

小明学完了树的基本知识,想做二叉树遍历的程序设计练习.根据二叉树的深度从数据文件中读入n个整数生成顺序存储的二叉树,做各种遍历的输出。小明发现输出的数据中有不少重复的,为此他先将重复的数据过滤掉,然后再生成二叉树的结构。现在要求你从数据文件中读取若干个整数,生成一个满二叉树,然后输出一个二叉树遍历的序列。

输入格式

输入包含2行;

第一行是两个整数h和p,h是二叉树的深度,h<=8。p=1时先序输出,p=2时中序输出,p=3时后序输出。 第二行若干个整数(数字小于等于1000),读入数据前,先要计算二叉树的结点个数n,然后在数据中顺序读取n个不重复的整数。例如深度为3的二叉树结点有7个。

输出格式

输出文只有一行,是二叉树遍历的序列。

样例

3 2
277 248 494 88 277 371 387 88 494 216 227
88 248 371 277 387 494 216

解释#1

样例数据构建的二叉树为: