- 15
- 0
- 约8.24千字
- 约 20页
- 2021-03-25 发布于山东
- 举报
西安 ********
课程设计说明书
设计题目:
查找算法性能分析
系别: 计算机学院
专业: 计算机科学
班级: 计科 ***
姓名: 王 ***
(共 页)
2015年01 月 07 日
*****
计算机科学 专业课程设计任务书
姓名: *** 班级: 计科 **** 学号: ****
一、设计或实践题目
查找算法性能分析
二、内容及要求
设计程序,对比分析顺序查找、折半查找、索引查找、二叉排序树查找和散列查找
五种查找算法的性能
1、测试数据的个数不少于
50 个;
2、对每一种查找算法设计实现适应的存储结构;
3、输出每种查找算法的查找成功时的平均长度
三、完成形式
1、设计报告;
2、源程序
四、系(部)审核意见
指导教师: **** 发题日期:
完成日期:
一 需求分析
2015-01-05
2015-01-09
1 问题描述
查找又称检索,是指在某种数据结构中找出满足给定条件的元素。查找是
一种十分有用的操作。而查找也有内外之分,若整个查找过程只在内存中进行
称为内查找;若查找过程中需要访问外存,则称为外查找,若在查找的同时对
表做修改运算(插入或删除) ,则相应的表成为动态查找表,反之称为静态查找
表。
由于查找运算的主要运算是关键字的比较,所以通常把查找过程中对关键
字的平均比较次数(也叫平均查找长度)作为一个查找算法效率优劣的标准。
平均查找程度 ASL 定义为:
ASL= ∑ PiCi ( i 从 1 到 n)
其中 Pi 代表查找第 i 个元素的概率,一般认为每个元素的查找概率相等, Ci
代表找到第 i 个元素所需要比较的次数。
查找算法有顺序查找、折半查找、索引查找、二叉树查找和散列查找(又叫哈
希查找),它们的性能各有千秋,对数据的存储结构要求也不同,譬如在顺序查找中
对表的结果没有严格的要求,无论用顺序表或链式表存储元素都可以查找成功;折
半查找要求则是需要顺序表;索引表则需要建立索引表;动态查找需要的树表查找
则需要建立建立相应的二叉树链表;哈希查找相应的需要建立一个哈希表。
1. 2 基本要求
1) 输入的形式和输入值的范围;
在设计查找算法性能分析的过程中,我们调用产生随机数函数:
srand((int)time(0));
产生 N个随机数。
注:折半查找中需要对产生的随机数进行排序,需要进行排序后再进行输入, N50;
2) 输出形式;
查找算法分析过程中,只要对查找算法稍作修改就可以利用平均查找
长度的公式:
ASL= ∑ PiCi ( i 从 1 到 n)
输出各种查找算法的平均查找长度。
注:平均查找长度 =总的平均查找长度 /N ;
3) 程序所能达到的功能
通过输出几种查找算法的 ASL,我们很显然能得在数据量较小时
N100)我们在实现静态查找时应该选择如何调用哪种查找算法。
概要设计
说明本程序中用到的所有抽象数据类型的定义。主程序的流程以及各程序模块之间
的层次 ( 调用 ) 关系。
1、
数据结构
顺序查找 :在 行 序 找 序表 型定 需要定
typedef int KeyType
;
序表 型
SeqList
型。
typedef NodeType SeqList
【 MaxSize】; /
它的基本思路是:从表的一端开始, 序 描 性表,依次将 描到的关
字和 定
k 相比 ,若当前 描到的关 字与
k 相等, 找成功。
折半查找 :在 行 序 找 序表 型定 需要定
typedef
int
KeyType,并
且需要 用排序函数 其 行排序。
折半 找 型 SeqList 型。 typedef NodeType SeqList 【 MaxSize】;
折半 找又叫二分 找,效率 高,但折半 找要求被 找的表示 序表,它
的基本思路是: R【 low? ..high 】是当前的 找区 ,首先确定 区 的中
点位置 mid= ┖ ( low+high ) /2 ┘ ,然后将待 的 k 与 R【 mid】 .key 。
① 如果中点 的 是 k,返回 元素的 符号;
② 如果中点 k, 中点 之后的数都大于 k,所以 k 在 表的左 ,
所以确定一个新的 找区 ;
③ 如果中点 k, 中点 之后的数都小于 k, k 在 表的右 ,再在
表的右 确定一个新的 找区 ;
④ 依次循 。
索引查找 :/ 索引存 构是在存 数据的同 建立附加的索引表, 索引表包
括关 字和地址。索引表的数据 型
KeyType key
、 int link
,link
代表
的起始下 。
typedef IdxType IDX[MaxSize]
ink 找到起始
您可能关注的文档
- 数据库oracle第二次作业.docx
- 数据库判断题答案.doc
- 数据库原理有答案.docx
- 数据库外文翻译外文文献英文文献数据库安全.docx
- 数据库大作业要求.docx
- 数据库学生信息管理系统.docx
- 数据库实验五.docx
- 数据库应用课程期末针对性训练.docx
- 数据库应用题库.docx
- 数据库总结学习复习计划题.docx
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
最近下载
- (高清版)-B-T 30146-2023 安全与韧性 业务连续性管理体系 要求.pdf VIP
- 安徽师大附中2026届高二化学第一学期期末综合测试试题含答案.doc
- 化学元素读音及顺口溜大全.doc VIP
- 成都市固体废弃物卫生处置场三期工程环评报告书小.pdf VIP
- 新编英语教程4(第三版)李观仪习题答案.pdf
- (一模)潍坊市2026届高三高考模拟考试物理试卷(含标准答案).pdf
- 2026 年人教版八年级数学下册期末综合测评试卷(附答案可下载).docx VIP
- 2025年铁路局招聘笔试真题及答案.docx VIP
- 2025年新疆中考物理试题(含答案详解)原卷.pdf
- Midea 美的 ET1065QL-01SE嵌入式电烤箱 说明书.pdf
原创力文档

文档评论(0)