数据结构查找技术验证实验报告Word文档格式.doc
- 文档编号:13169045
- 上传时间:2022-10-07
- 格式:DOC
- 页数:5
- 大小:60KB
数据结构查找技术验证实验报告Word文档格式.doc
《数据结构查找技术验证实验报告Word文档格式.doc》由会员分享,可在线阅读,更多相关《数据结构查找技术验证实验报告Word文档格式.doc(5页珍藏版)》请在冰豆网上搜索。
{
intlow=0,high=N-1,mid,j=0;
//j计数查找次数
while(low<
=high)
{
mid=(low+high)/2;
//取中间位
++j;
printf("
\n第%2d次查找low=%2dhigh=%2dmid=%2d"
j,low,high,mid);
//显示每次查找低中高位,查找次数
if(arr[mid]==key)//查到数据,跳出循环
break;
if(arr[mid]<
key)//查找的KEY大于中位值,查后半部
low=mid+1;
else
high=mid-1;
//查找的KEY小于中位值,查前半部
}
if(low<
=high)//查到数据
printf("
\n\n经过总共%2d次查找,找到该数字,该数字位于数组第%d位,\n\n"
j,mid+1);
//显示查到的数据的值,下标值,总查找次数
else
\n\n没有找到!
"
);
//显示没有找到
}
voidmain()
intarr[N],key,i;
printf("
\n折半查找验证程序,设定被查数据有位,设定为:
\n"
for(i=0;
i<
N;
i++)//输入15个排好序的数据
arr[i]=i+1;
%d"
arr[i]);
\n请输入要查询的数字(-,输入小于等于零的数字退出验证程序):
scanf("
%d"
&
key);
//输入KEY
while(key>
0)
{
find(arr,key,N);
//调用折半查找函数
}
a)程序运行的结果如何?
二、二叉排序树的建立
⑴掌握二叉排序树定义和特性;
⑵掌握二叉排序树的建立方法;
⑶实现基于二叉排序树的查找技术;
⑷掌握二叉排序树的查找性能。
⑴对给定的一组无序序列,建立一棵二叉排序树;
⑵对建立的二叉排序树实现查找操作。
二、设计与编码
#include<
classBT
public:
BT(void)//构造函数
voidInitBiTree(BiTree*t);
cout<
<
初始化结束!
;
//存储结构——二叉链表
typedefstructLnode
intkey;
structLnode*lchild,*rchild;
}BiTnode,*BiTree;
//创建、初始化
voidInitBiTree(BiTree*t)
*t=NULL;
//置空
//输出中序遍历二叉树
voidInorderBiTree(BiTreep)
if(p)//p为空,则空操作,否则继续执行
InorderBiTree(p->
lchild);
p->
key<
"
rchild);
}
//查找数据
BiTreeSearchBST(BiTreet,intk)
{
BiTreep;
p=t;
while((p!
=NULL)&
&
(p->
key!
=k))
if(k<
key)
p=p->
lchild;
else
rchild;
return(p);
//插入数据
voidInsertBST(BiTree*t,intk)
BiTnode*f,*p=*t;
while(p)
if(p->
key==k)
return;
f=p;
p=(k<
key)?
lchild:
}
p=(BiTree)malloc(sizeof(BiTnode));
p->
key=k;
lchild=p->
rchild=NULL;
if(*t==NULL)
*t=p;
elseif(k<
f->
key)
f->
lchild=p;
else
rchild=p;
//在二叉排序树*t中删除关键字为k的结点
~BT()
cout<
调用析构函数释放!
endl;
}//析构
private:
};
//classBT
intmain()
BTbt;
//classBT创建对象bt
BT:
:
BiTreet=NULL,p;
intkey,q=1;
bt.InitBiTree(&
t);
请输入关键字的值,以0结束:
cin>
>
key;
while(key)
bt.InsertBST(&
t,key);
cin>
cout<
中序遍历建立的二叉排序树的序列为:
bt.InorderBiTree(t);
请输入要插入的结点的关键字的值:
bt.InsertBST(&
插入后的二叉排序树的中序序列为:
请输入要查找的结点的关键字的值:
p=bt.SearchBST(t,key);
if(p==NULL)
没有查找到该结点"
else
查找到该结点:
system("
pause"
return0;
a)程序运行结果如何
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 查找 技术 验证 实验 报告