- 15
- 0
- 约5.87千字
- 约 5页
- 2017-01-08 发布于北京
- 举报
[数据结构二叉树作业
实验目的:
通过上机实验进一步掌握栈、队列、二叉树的存储结构及基本操作的实现方法。
实验内容与要求:
基于二叉链表存储结构实现二叉树的基本运算,要求:
⑴能建立非空二叉树;
⑵实现二叉树的先、中、后序递归遍历算法;
⑶实现二叉树的非递归的先(或中、或后)序遍历算法及层序遍历算法;
⑷记录运行结果并对递归算法和非递归算法的效率加以分析。
数据结构设计:
逻辑结构:树形结构
存储结构:链式存储结构
算法设计:
#include stdio.h
#include windows.h
#define OK 1
#define ERROR 0
//使用二叉链表存储形式
typedef struct BiTNode
{
char data;
struct BiTNode *lchild,*rchild;
}BiTNode,*BiTree;
//这里是将指向节点的指针放到栈里,而通过调试是
//可以看到指针指向的值的,所以不是将树放进去了
typedef struct
{
BiTree *base;
BiTree *top;
int stacksize;
}SqStack;
typedef struct
{
BiTree *base;
int front;
int rear;
}SqQueue;
int InitStack(SqStack S)
{
S.base = (B
原创力文档

文档评论(0)