#P1897. 求二叉树的深度及遍历结果

求二叉树的深度及遍历结果

题目描述

从键盘读入一棵二叉树,请问这棵二叉树的深度是多少?这棵二叉树如果后序遍历的结果是什么?

输入格式

第 1 行输入一个整数 nn ,代表读入的数据数量(n100n \le 100)。

第 2 行读入 nn 个非负整数,代表读入的数据,读入的整数中,如果值大于 00 ,代表的是二叉树的结点,如果值等于 00 ,代表当前结点为空(根结点的深度为 1 )。

二叉树的构造按照层次顺序(即第 1 层 1 个整数,第 2 层 2个,第 3 层 4 个,第 4 层有 8 个... ,如果某个结点不存在以 0 代替)。

样例数据确保读入的第 nn 个整数 >0。

输出格式

第 1 行输出该二叉树的深度;

第 2 行输出后序遍历二叉树得到的序列,数字之间用空格隔开;

样例

5
1 2 0 3 4
3
3 4 2 1

样例解释

样例对应二叉树如下图所示:

img