数据结构实验之二叉树五:层序遍历

来源:互联网 发布:淘宝模特招聘网 编辑:程序博客网 时间:2024/06/05 21:18

数据结构实验之二叉树五:层序遍历

Time Limit: 1000MS Memory Limit: 65536KB
Submit Statistic

Problem Description

已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立二叉树并求二叉树的层次遍历序列。

Input

 输入数据有多行,第一行是一个整数t (t<1000),代表有t行测试数据。每行是一个长度小于50个字符的字符串。

Output

 输出二叉树的层次遍历序列。

Example Input

2abd,,eg,,,cf,,,xnl,,i,,u,,

Example Output

abcdefgxnuli
代码:
#include<stdio.h>#include<string.h>#include<stdlib.h>typedef struct node{    char data;    struct node *l, *r;}*bitree;char s[100];int cnt;int t;bitree create(){    bitree root;    if(s[++cnt] == ',')        root = NULL;    else    {    root = new node;    root->data = s[cnt];    root->l = create();    root->r = create();    }    return root;}void cengxu(bitree root){    bitree temp[100];    int in = 0, out = 0;    temp[in++] = root;    while(in > out)    {        if(temp[out])        {            printf("%c", temp[out]->data);            temp[in++] = temp[out]->l;            temp[in++] = temp[out]->r;        }        out++;    }}int main(){    int t;    bitree root;    scanf("%d", &t);    while(t--)    {        scanf("%s", s);        cnt = -1;        root = create();        cengxu(root);        printf("\n");    }    return 0 ;}

原创粉丝点击