二叉树创建,并进行先序遍历,代码没报错,但是输入序列进去之后死后没有输出!!!!!

思考:如何才能确定一棵树

(┅)先序和中序重建二叉树,按层次遍历输出

printf("按中序序列将新建的二叉树输出\n"); printf("按后序序列将新建的二叉树输出\n");

(二)根据后序序列和中序序列重建树按层次遍历输出

       关于怎样由后序和中序重建二叉树原理读者可以自己查书,本博文仅供作者自己笔记之用

掌握二叉树的存储实现;

掌握二叉树的遍历思想;

掌握二叉树的常见算法的程序实现

建立二叉树的二叉链表。

实现该二叉树的先序遍历、中序遍历和后序遍历递归算法输出

实现二叉树的中序非递归遍历算法。

交换二叉树每个结点的左子树和右子树

在主函数中设计一个简单的菜单

)认真阅读二叉树的內容,从而掌握二叉树的相关内容为编写程序做好第

以便在实验时能很好地应付可能出现的问题;

)通过前面两步,在实验前找到自己嘚问题实验前好好思考,若不能自行

给定一棵二叉树的前序遍历和中序遍历序列求其后序遍历续列(注:给定中序遍历序列,只要知道前序、后序或者层次遍历的一种就能唯一的确定一棵二叉树)

两個字符串,其长度均小于26

第一行为前序遍历,第二行为中序遍历二叉树的结点名称以大写字母表示:A,B,C,D.......,最多26个字母

 输入样例可能有哆组,对于每组测试样例输出一行,为后续遍历的字符串

 本题目涉及二叉树的建立、遍历、还原、删除等操作。给定二叉树的前序及Φ序就可以唯一的确定一棵二叉树然后对二叉树

进行后续遍历一次,就可以得到所求的后序序列遍历采用递归的遍历,以减少代码量免得出错。

{//由前序序列中序序列构造二叉树的函数


 注意二叉树的结构体的定义方法,本代码使用C语言(C++稍有不同)在用malloc进行动态分配内存前要引用头文件

malloc.h,内存分配后也要在合适时候对内存进行回收

 参考了王道系列的《计算机考研——机试指南》。

我要回帖

 

随机推荐