- 12
- 0
- 约4.96千字
- 约 8页
- 2017-02-16 发布于江苏
- 举报
《数据结构》实验报告【DOC精选】
南昌航空大学
实
验
报
告
课程名称: 数据结构
准考证号: 036811300371
姓 名: 刘林生
指导老师: 廖丽老师
二叉树的建立及输出实验目的
熟悉二叉链表表示的二叉树结构及其递归遍历,掌握建立二叉链表要领,深入理解递归遍历二叉链表的执行路径。
实验内容
(1)建立一颗二叉链表表示的二叉树;
(2)对其进行前序,中序,后序输出。
实验要求
先将二叉树通过加入虚节点的方式使其完全化,然后按层将其输入。可以用二叉树中不会出现字符表示虚节点例如@,另一二叉树中不会出现的字符表示输入序列结束例如#。如下二叉树须输入序列a@b@@@c# 。或以广义表的形式输入二叉树的节点。按先序,中序,后序序列将其遍历输出。
五、 实验步骤
//A.Header Files Source Files bitree.cpp
#includebitree.h
int main(int argc, char* argv[])
{
int array[] = {5,6,3,7,67,1,24,8,21,16,78,9};
Tree tr(array, sizeof(array)/sizeof(array[0]));
tr.traverse();
return 0;
}
//B. Header Files bitree.h
#include iostream
#include stack
//here delete #includecassert
using namespace std;
typedef int telemtype;
struct bitnode //change to typedef struct bitnode and it will be
//typedef : ignored on left of struct bitnode when no variable is declared at last it will be ok
{
bitnode* lchild;
bitnode* rchild;
telemtype data;
bitnode(int e=0, bitnode* left=NULL, bitnode* right=NULL)
{
data = e;
lchild = left;
rchild = right;
}
};
class Tree
{
public:
Tree()
{
root = NULL;
}
Tree(int array[], int size);
~Tree();
void traverse();
void postTraverse();
void recur_postTraverse(bitnode* cur);
void preTraverse();
void recur_preTraverse(bitnode* cur);
void inTraverse();
void recur_inTraverse(bitnode* cur);
private:
Tree(const Tree t);
Tree operator=(const Tree t);
bitnode* createTree(int array[], int size);
void destroyTree(bitnode* cur);
private:
bitnode* root;
};
Tree::Tree(int array[], int size)
{
if ((array==NULL)||(size=0))
root = NULL;
else
root = createTree(array, size);
}
//create a tree
bitnode* Tree::createTree(int array[], int size)
{
if ((array==NULL)||(size=0))
return NULL;
int mid=size/2;
bitnode* cur=new bitnode(array[mid]);
cur-lchild = createTre
您可能关注的文档
- 《数学实验》课程实验指导书【DOC精选】.doc
- 《数字电子技术》习题与复习题(版S)【DOC精选】.doc
- 《数学史概论》教案【DOC精选】.doc
- 《数学物理方法》【DOC精选】.doc
- 《数学分析》(华师大二版)课本上的习题【DOC精选】.doc
- 《数学模型》课程设计选题【DOC精选】.doc
- 《数学物理方法》第八章作业(边界条件)【DOC精选】.doc
- 《数据库原理》复习大纲--工业工程【DOC精选】.doc
- 《数据库原理》综合设计报告学生成绩管理系统【DOC精选】.doc
- 《数据库原理及应用》复习题及答案【DOC精选】.docx
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 原调正谱G小小蝴蝶la farfalletta钢琴伴奏高清打印版.pdf VIP
- 上海大学2024-2025学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 广发证券-交通银行-601328-零售转型提速,定增落地夯实资本根基.pdf
- 上海大学2024-2025学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 循环系统护理小讲课.pptx
- 建筑屋面西瓦专项施工方案(范本).doc VIP
- 2024年山东铝业职业学院单招综合素质考试题库及答案1套.docx VIP
- 探究TIPS术后支架堵塞的影响因素及抗凝治疗的必要性:基于多维度分析与临床实践.docx
- 成品仓库出货明细表.pdf VIP
- 贵州省黔西南州2025年中考数学试卷及答案.pdf VIP
原创力文档

文档评论(0)