题目1:二叉树遍历
来源:互联网 发布:网络诈骗种类 编辑:程序博客网 时间:2024/05/20 22:35
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:2127
解决:853
- 题目描述:
编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。
例如如下的先序遍历字符串:
ABC##DE#G##F###
其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。
- 输入:
输入包括1行字符串,长度不超过100。
- 输出:
可能有多组测试数据,对于每组数据,
输出将输入字符串建立二叉树后中序遍历的序列,每个字符后面都有一个空格。
每个输出结果占一行。
- 样例输入:
abc##de#g##f###
- 样例输出:
c b e g d f a
- 答疑:
- 解题遇到问题?分享解题心得?讨论本题请访问:http://t.jobdu.com/thread-7907-1-1.html
#include<stdio.h>#include<stdlib.h>struct Tree_Node{char data;struct Tree_Node *left;struct Tree_Node *right;};typedef struct Tree_Node *BTree;BTree root;BTree BTCreate(BTree BT);void zhongxubianli(BTree BT);char c;int main(){ while(1) { root = BTCreate(root); zhongxubianli(root); printf("\n"); } return 0;}BTree BTCreate(BTree BT){ scanf("%c",&c); { if(c == '#') BT = NULL; else { BT = (BTree)malloc(sizeof(struct Tree_Node)); BT->data = c; BT->left = BTCreate(BT); BT->right = BTCreate(BT); } return BT; }}void zhongxubianli(BTree BT){ if(BT != NULL) { zhongxubianli(BT->left); printf("%c ",BT->data); zhongxubianli(BT->right); }}
- 题目1:二叉树遍历
- 题目32:二叉树遍历
- 题目1184:二叉树遍历
- 题目1084: 二叉树遍历
- 题目1078:二叉树遍历
- 题目1184:二叉树遍历
- 题目1078:二叉树遍历
- 题目1078:二叉树遍历
- 题目1078:二叉树遍历
- 题目1184:二叉树遍历
- 题目1078:二叉树遍历
- 题目1184:二叉树遍历
- 题目1078:二叉树遍历
- 题目1078:二叉树遍历
- 题目1078:二叉树遍历
- 题目1078:二叉树遍历
- 题目1078:二叉树遍历
- 题目1184:二叉树遍历
- ios 正则表达式
- NEUOJ-1235 Palindrome Substring
- 用InternetOpen()的下载者
- 程序员在 5 月 20 日这天有什么特别的表白方式?
- 条件运算符
- 题目1:二叉树遍历
- 系统进化树构建及数据分析的简介
- Android TabActivity 绑定服务失败原因
- C/C++ 中宏定义的优缺点
- 出现diskioexception可能的原因
- TCP的确认延时机制及Windows系统的确认延时修改
- linux讨论之文件系统与目录结构与学习命令前奏
- 设计模式 - 享元模式
- 【互联网面试】朋友圈问题