1291 数据结构上机测试4.1:二叉树的遍历与应用1

来源:互联网 发布:神庙升级数据 编辑:程序博客网 时间:2024/05/18 19:43

数据结构上机测试4.1:二叉树的遍历与应用1

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

输入二叉树的先序遍历序列和中序遍历序列,输出该二叉树的后序遍历序列。

输入

第一行输入二叉树的先序遍历序列;
第二行输入二叉树的中序遍历序列。

输出

输出该二叉树的后序遍历序列。

示例输入

ABDCEFBDAECF

示例输出

DBEFCA
#include <stdio.h>#include <string.h>#include <stdlib.h>char a[10001],b[10001];struct node{    char data;    struct node *l,*r;//左子树右子树};struct node *build (char *a,char *b,int n)//n是字符串长度{    int i;    struct node *t;    char ch= a[0];    if (n <= 0)        return NULL;    else    {        t = (struct node *)malloc(sizeof (struct node));        t -> data = ch;        for (i = 0; i < n; i++)        {            if (b[i] == ch)                break;        }        t -> l = build ( a + 1, b, i);        t -> r = build (a + 1 + i,b + 1 + i,n - 1 - i);        return t;    }}void hou(struct node *t){    if(t!=NULL)    {        hou(t -> l);        hou(t -> r);        printf ("%c",t->data);    }}int main(){    while(~scanf ("%s%s",a,b))    {        int lena;        lena =strlen (a);        struct node *tree;//**        tree = build (a,b,lena);        hou(tree);        printf ("\n");    }    return 0;}




0 0
原创粉丝点击