下载此文档

数据结构B实验报告-单链表的实现.doc


文档分类:IT计算机 | 页数:约11页 举报非法文档有奖
1/11
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/11 下载此文档
文档列表 文档介绍
实 验 报 告
〔 2014/ 2015 学年 第二学期〕
课程名称
数 据 结 构B
实验名称
单链表的实现
实验时间
2015

5

15

指导单位
电脑学院电脑科学与技术系
eCreate(Bt->rchild);
}
return Bt;
}
void Preorder(BTNode *Bt) //先序输出二叉树
{
if(Bt)
{
printf("%c ",Bt->element);
Preorder(Bt->lchild);
Preorder(Bt->rchild);
}
}
void Inorder(BTNode *Bt) //中序输出二叉树
{
if(Bt)
{
Inorder(Bt->lchild);
4
printf("%c ",Bt->element);
Inorder(Bt->rchild);
}
}
void Postorder(BTNode *Bt) //后序输出二叉树
{
if(Bt)
{
Postorder(Bt->lchild);
Postorder(Bt->rchild);
printf("%c ",Bt->element);
}
}
int Size(BTNode *Bt) //求二叉树中的结点数
{
int s,s1,s2;
if(!Bt) //二叉树为空,结点数为0
s=0;
else
5
{
s1=Size(Bt->lchild);
s2=Size(Bt->rchild);
s=s1+s2+1; //二叉树的结点数等于左右子树结点数的和在加1〔根结点〕
}
return s;
}
int Leaf(BTNode *Bt) //求二叉树中叶子个数
{
int ll,rl,tl;
if(!Bt) //二叉树为空,叶子个数为0
tl=0;
else if(!Bt->lchild&&!Bt->rchild) //叶子满足的条件〔左右孩子均为空〕
tl=1;
else
{
ll=Leaf(Bt->lchild);
rl=Leaf(Bt->rchild);
6
tl=ll+rl;
}
return tl;
}
int Depth(BTNode *Bt) //求二叉树的深度〔高度〕
{
int ld,rd,td;
if(!Bt)
td=0;
else
{
ld=Depth(Bt->lchild);
rd=Depth(Bt->rchild);
if(ld>=rd) //左右子树高度大的加1,即为二叉树的高度
td=ld+1;
else
td=rd+1;
}
return td;
7
}
void main()
{
BTNode *Bt;
int s,tl,td;
Bt=NULL;
printf("\nInput create order:\n");
Bt=PreCreate(Bt);
printf("\nThe preorder is:\n");
Preorder(Bt);
printf("\nThe inorder is:\n");
Inorder(Bt);
printf("\nThe postorder is:\n");
Postorder(Bt);
8
s=Size(Bt);
printf("\nThe size of the tree is:\n");
printf("%d\n",s);
tl=Leaf(Bt);
printf("\nThe leaves of the tree is:\n");
printf("%d\n",tl);
td=Depth(Bt);
printf("\nThe depth of the tree is:\n");
printf("%d\n",td);
}
9
实 验 报 告
10
五、实验小结〔包括问题和解决方法、心得体会、意见与建议等〕
这是一门纯属于设计的科目,它需用把理论变为上机调试。刚开始学的时候确实有很多地方我很不理解,每次上课时老师都会给我

数据结构B实验报告-单链表的实现 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数11
  • 收藏数0 收藏
  • 顶次数0
  • 上传人清懿
  • 文件大小245 KB
  • 时间2022-03-27