实验5 查找算法顺序法Word格式.docx
- 文档编号:17222031
- 上传时间:2022-11-29
- 格式:DOCX
- 页数:8
- 大小:466.52KB
实验5 查找算法顺序法Word格式.docx
《实验5 查找算法顺序法Word格式.docx》由会员分享,可在线阅读,更多相关《实验5 查找算法顺序法Word格式.docx(8页珍藏版)》请在冰豆网上搜索。
structElemType//学生的记录信息的结构体
{
KeyTypekey;
//学号
charname[10];
//姓名
intenglish;
//成绩
intmath;
};
classList
{
public:
ElemType*ht;
//表数组
intlength;
//表大小(长度)
KeyTypep;
//除留余数法的大质数
List(intn1,intp1);
~List(){
delete[]ht;
length=0;
};
intfind(KeyTypek);
intsearch(KeyTypek);
voidcreat_hash();
voidPrintOut();
};
List:
:
List(intn1,intp1)
intnum=0;
intp;
length=n1;
p=p1;
ht=newElemType[length];
for(inti=0;
i<
length;
i++)
ht[i].key=-1;
}
voidList:
creat_hash()
inti,K,en,ma,num;
i=0;
charna[10];
cout<
<
"
\n请逐一输入各个学号(关键字值)(-1结束):
;
cin>
>
K;
while(K!
=-1&
&
length)
{
cout<
\n请输入学生的姓名,英语成绩和高数成绩:
cin>
na>
en>
ma;
ht[i].key=K;
strcpy(ht[i].name,na);
//用串拷贝赋值
ht[i].english=en;
ht[i].math=ma;
// 插入学生记录K
\n插入成功!
;
i++;
num++;
}
//查询某关键字的记录
intList:
search(KeyTypek)
ht[length].key=k;
//设置监视哨
inti=0;
for(i;
ht[i].key!
=k;
{}
if(ht[i].key<
i)
i=-1;
returni;
PrintOut()
inti;
for(i=0;
i++)
{
if(ht[i].key!
=-1)
\ni="
学号:
ht[i].key<
姓名:
ht[i].name
<
英语成绩:
ht[i].english<
高数成绩:
ht[i].math;
intmain()
intp0,n0;
\n请输入n值(n值应是记录总数的1.3-1.5倍)"
n0;
\n请输入P值(应是不大于n的大质数):
p0;
Listha(n0,p0);
ElemTypea;
intk;
do{
\n1.建立哈希表"
\n2.在哈希表中查找某位学生"
\n3.输出哈希表"
\n4.结束"
\n=============================="
\n输入您的选择(1,2,3,4):
k;
switch(k)
{
case1:
ha.creat_hash();
}break;
case2:
cout<
\n请输入待查找的学生学号:
cin>
a.key;
inti=ha.search(a.key);
if(i==-1)
cout<
\n此学生"
a.key<
不存在!
else
{
\ni="
ha.ht[i].key<
ha.ht[i].name;
ha.ht[i].english<
ha.ht[i].math;
}
}break;
case3:
ha.PrintOut();
}
}while(k>
=1&
k<
4);
\n再见!
\n按任意键,返回。
return0;
三、实验结果:
1.建立哈希表:
2.在哈希表中查找某位学生:
3.输出哈希表:
4.结束:
五、总结
(软件设计与实现过程种的经验与体会,进一步的改进设想,可再加入哪些部分?
哪些部分可删除?
哪些部分可合并?
哪些可降低复杂度?
怎样设计能提高其可复用性?
多思考,多总结,才能不断提高程序设计能力。
)
查找是对数据进行处理时常用操作,是各种数据结构中最常用的算法之一。
不论在线性表中还是在树或图中都会涉及查找问题。
例如:
在一个电话通信表中,查找某个员工的电话;
在计算机的某个操作系统环境下,查找某个文件;
在互联网上,通过搜索引擎查找所需要的某类信息。
这些都是典型的查找问题。
查找算法的优劣对系统运行效率的影响极大。
静态查找表是指在查找过程中其结构始终不发生变化的查找表,静态查找表主要采用顺序存储结构,算法的时间复杂度为O(n)。
2012年12月12日星期三
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验5 查找算法顺序法 实验 查找 算法 顺序