下载此文档

数据结构二叉树实验报告.docx


文档分类:IT计算机 | 页数:约17页 举报非法文档有奖
1/17
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/17 下载此文档
文档列表 文档介绍
数据结构二叉树实验报告.docx精品文档
精品文档
1
精品文档
.
数据结构




精品文档
精品文档
17
精品文档
)
{
Release(root);
}
精品文档
精品文档
12
精品文档
intmain()
{
inta[10]={1,2,3,4,5,6,7,8,9,10};
精品文档
精品文档
13
精品文档
'.
精品文档
精品文档
17
精品文档
.
BiTree<int>BTree(a,10);
BiTree<int>Tree(BTree);
();
cout<<endl;
();
cout<<endl;
();
cout<<endl;
();
cout<<endl;
();
cout<<endl;
();
cout<<endl;
();
cout<<endl;
();
cout<<endl;
intm=();
cout<<m<<endl;
return0;
}

inta[10]={1,2,3,4,5};
12453
12453
42513
45231
12345
5

:这次实验大多用了递归的算法,比较好理解。
:新得体会:
在创建二叉树的过程中,在没有思路的时候可以巧妙的利用递归算法。
但是我的代码仍然应该改进,应该进一步简化,减少算法的时间复杂度和空间
复杂度。
#include<iostream>
usingnamespacestd;
template<classT>classBiNode
精品文档
精品文档
15
精品文档
'.
精品文档
精品文档
17
精品文档
.
{
public:
data;
BiNode<T>*lchild;
BiNode<T>*rchild;
};
template<classT>classBiTree
{
public:
BiNode<T>*root;
BiTree(Tdata[],intn);
BiTree(BiTree<T>&r);
voidPreOrder(BiNode<T>*R);
voidInOrder(BiNode<T>*R);
voidPostOrder(BiNode<T>*R);
voidLevelOrder(BiNode<T>*R);
intCount(BiNode<T>*R);
~BiTree();
private:
voidCreate(BiNode<T>*&R,Tdata[],inti,intn);
voidCopyTree(BiNode<T>*sR,BiNode<T>*&dR);
voidRelease(BiNode<T>*R);
};
template<classT>
voidBiTree<T>::Create(BiNode<T>*&R,Tdata[],inti,intn)
{
if(i<=n&&data[i-1])
{
R=newBiNode<T>;
R->data=data[i-1];
Create(R->lchild,data,2*i,n);
Create(R->rchild,data,2*i+1,n);
}
elseR=NULL;
}
template<classT>
BiTree<T>::BiTree(Tdata[],intn)
{
Create(root,data,1,n);
}
template<classT>
voidBiTree<T>::CopyTree(BiNode<T>*sR,BiNode<T>*&dR)
{
if(sR==NULL)
dR=NULL;
else
{
dR=newBiNode<T>;
精品文档
精品文档
17
精品文档
'.
精品文档
精品文档
18
精品文档
.
dR->data=sR->data;
CopyTree(sR->lchild,dR->lchild);
CopyTree(sR->rchil

数据结构二叉树实验报告 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数17
  • 收藏数0 收藏
  • 顶次数0
  • 上传人万家乐书屋
  • 文件大小36 KB
  • 时间2022-03-07