26847: 二叉树的遍历

原创 2015年07月10日 09:46:02

题目描述
建立二叉树,然后实现:输出先序遍历、中序遍历、后序遍历的结果。
输入
第一行:结点个数n。
以下行:每行3个数,第一个是父亲,后两个依次为左右孩子,0表示空。
输出
输出:根、先中后序遍历结果。
样例输入

8
1 2 4
2 0 0
4 8 0
3 1 5
5 6 0
6 0 7
8 0 0
7 0 0


样例输出

3
3 1 2 4 8 5 6 7 
2 1 8 4 3 6 7 5 
2 8 4 1 7 6 5 3 


program p26847;
type
  treetype=record
       father:integer;
       lch,rch:integer;
   end;
var
  tree:array[1..200] of treetype;
  n,m,t:integer;
  procedure init;
    var f,l,r,i:integer;
    begin
       readln(n);
      for i:=1 to n do
        begin
          readln(f,l,r); tree[f].lch:=l; tree[f].rch:=r;
          if l<>0 then tree[l].father:=f;
          if r<>0 then tree[r].father:=f;
        end;
    end;
 function root:integer;
    var i:integer;
    begin
      for i:=1 to n do
        if tree[i].father=0 then
          begin
            root:=i;
            exit;
          end;
    end;
procedure preorder(t:integer);
    begin
      if t<>0 then
        begin
          write(t,' ');
          preorder(tree[t].lch);
          preorder(tree[t].rch);
        end;
    end;
  procedure inorder(t:integer);
    begin
      if t<>0 then
        begin
          inorder(tree[t].lch);
          write(t,' ');
          inorder(tree[t].rch);
        end;
    end;
procedure sucorder(t:integer);
    begin
      if t<>0 then
        begin
          sucorder(tree[t].lch);
          sucorder(tree[t].rch);
          write(t,' ');
        end;
    end;
begin
  init;
  t:=root;
  writeln(t);
  preorder(t);writeln;
  inorder(root);writeln;
  sucorder(t);
end.

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

二叉树的遍历算法

uva 122 Trees on the level 二叉树的层次遍历(bfs)

题目链接#include #include #include #include #include #include #include #include #include #include #inclu...
  • naipp
  • naipp
  • 2016-08-21 21:27
  • 92

二叉树的各种遍历操作

二叉树的三种遍历

对于二叉树三种非递归遍历方式的理解

利用栈实现二叉树的先序,中序,后序遍历的非递归操作 栈是一种先进后出的数据结构,其本质应是记录作用,支撑回溯(即按原路线返回);因此,基于其的二叉树遍历操作深刻的体现了其特性: 1.先入、后出,只...

二叉树及其遍历

二叉树的三种遍历

二叉树的遍历 递归非递归 思路和 java实现

转载自: http://blog.csdn.net/clam_clam/article/details/6845399 二叉树遍历首先弄清遍历流程。 中序遍历:第一次经过从它找左,第二...

二叉树的遍历

  • 2015-11-24 22:28
  • 462B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)