zoukankan      html  css  js  c++  java
  • 3143 二叉树的序遍历

    3143 二叉树的序遍历

     

    时间限制: 1 s
    空间限制: 32000 KB
    题目等级 : 白银 Silver
     
     
     
    题目描述 Description

    求一棵二叉树的前序遍历,中序遍历和后序遍历

    输入描述 Input Description

    第一行一个整数n,表示这棵树的节点个数。

    接下来n行每行2个整数L和R。第i行的两个整数Li和Ri代表编号为i的节点的左儿子编号和右儿子编号。

    输出描述 Output Description

    输出一共三行,分别为前序遍历,中序遍历和后序遍历。编号之间用空格隔开。

    样例输入 Sample Input

    5

    2 3

    4 5

    0 0

    0 0

    0 0

    样例输出 Sample Output

    1 2 4 5 3

    4 2 5 1 3

    4 5 2 3 1

     1 #include<iostream>
     2 using namespace std;
     3 int root;
     4 struct node
     5 {
     6     int parent;
     7     int date;
     8     int lchild;
     9     int rchild;
    10 }a[101];
    11 void xianxu(int i)
    12 {
    13     cout<<i<<" ";
    14     if(a[i].lchild!=0)
    15     {
    16         xianxu(a[i].lchild);
    17     }
    18     if(a[i].rchild!=0)
    19     {
    20         xianxu(a[i].rchild);
    21     }
    22 }
    23 void zhongxu(int i)
    24 {
    25     if(a[i].lchild!=0)
    26     {
    27         zhongxu(a[i].lchild);
    28     }
    29     cout<<i<<" ";
    30     if(a[i].rchild!=0)
    31     {
    32         zhongxu(a[i].rchild);
    33     }
    34 }
    35 void houxu(int i)
    36 {
    37 
    38     if(a[i].lchild!=0)
    39     {
    40         houxu(a[i].lchild);
    41     }
    42     if(a[i].rchild!=0)
    43     {
    44         houxu(a[i].rchild);
    45     }
    46     cout<<i<<" ";
    47 }
    48 int main()
    49 {
    50     int n;
    51     cin>>n;
    52     for(int i=1;i<=n;i++)
    53     {
    54         cin>>a[i].lchild>>a[i].rchild;
    55         a[a[i].lchild].parent=i;
    56         a[a[i].rchild].parent=i;
    57     }
    58     for(int i=1;i<=n;i++)
    59     {
    60         if(a[i].parent==0)
    61         {
    62             root=i;
    63         }
    64     }
    65     xianxu(root);
    66     cout<<endl;
    67     zhongxu(root);
    68     cout<<endl;
    69     houxu(root);
    70     return 0;
    71 }
  • 相关阅读:
    XSLT轻松入门收藏贴
    [网摘学习]使用openstack构建私有云计算平台
    [网摘学习]关于OpenStack架构
    [问题]django_openstack.templatetags
    [网摘学习]5个Linux命令
    关于git使用 命令参考
    [openstack问题]dashboard无法登陆进去的问题
    前台显示后台变量值
    实现浏览器垂直水平居中的 DIV
    IsPostBack作用
  • 原文地址:https://www.cnblogs.com/zwfymqz/p/6646717.html
Copyright © 2011-2022 走看看