《算法分析与设计》课程作业

发布 2022-10-01 22:34:28 阅读 5070

题一。一、 设计目的。

1. 掌握各种排序的基本思想。

2. 掌握各种排序方法的算法实现。

3. 掌握各种排序方法的优劣分析及花费的时间的计算。

4. 掌握各种排序方法所适应的不同场合。

二、 设计内容和要求。

利用随机函数产生3000个随机整数,利用选择排序、起泡排序、快速排序、合并排序等排序方法进行排序,并统计每一种排序上机所花费的时间。

题二。一、 设计目的。

1.掌握哈希表的定义。

2.掌握哈希函数的构造。

3.掌握哈希表的处理冲突的方法。

二、设计内容和要求。

哈希表的设计与实现

问题描述: 设计哈希表实现**号码查询系统。

基本要求:1、设每个记录有下列数据项:**号码、用户名、地址;

2、从键盘输入各记录,分别以**号码和用户名为关键字建立哈希表;

3、采用再哈希法解决冲突;

4、查找并显示给定**号码的记录;

5、查找并显示给定用户名的记录。

6、在哈希函数确定的前提下,尝试各种不同类型处理冲突的方法(至少两种),考察平均查找长度的变化。

题三。一、 设计目的。

1.学会分析问题的方法。

2.掌握如何根据实际问题设计相应的算法。

3.掌握算法的具体实现。

二、设计内容和要求。

n皇后问题:在一个n×n的国际象棋棋盘中摆n个皇后,使这n个皇后不能互相被对方吃掉。

要求:1)依次输出各种成功的放置方法。

2)画出棋盘的图形形式,并动态的演示试探过程。

3)程序能方便的移植到其它规格的棋盘上。

例如:在一个4×4的棋盘可以摆放的棋位置两种。

题四。一、 设计目的。

1.学会分析问题的方法。

2.掌握如何根据实际问题设计相应的算法。

3.掌握算法的具体实现。

二、设计内容和要求。

石子归并问题:在一个圆形操场的四周摆放着n堆石子(n<= 100),现要将石子有次序地合并成一堆。规定每次只能选取相邻的两堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分。

编一程序,由文件读入堆栈数n及每堆栈的石子数(<=20)。

1)选择一种合并石子的方案,使用权得做n-1次合并,得分的总和最小;

2)选择一种合并石子的方案,使用权得做n-1次合并,得分的总和最大;

输入数据:第一行为石子堆数n;

第二行为每堆的石子数,每两个数之间用一个空格分隔。

输出数据:从第一至第n行为得分最小的合并方案。第n+1行是空行。

从第n+2行到第2n+1行是得分最大合并方案。每种合并方案用n行表示,其中第i行(1<=i<=n)表示第i次合并前各堆的石子数(依顺时针次序输出,哪一堆先输出均可).要求将待合并的两堆石子数以相应的负数表示。

输入输出范例:输入:

输出:附:课程作业报告的书写格式。

一、 设计题目(任选其二)

二、 运行环境(软、硬件环境)

三、 算法设计的思想。

四、 算法的流程图。

五、 算法设计分析。

六、 源**。

七、 运行结果分析。

八、 收获及体会。

注意:要求写明姓名,学号,任何两人**,文档均不能相同,否则以不及格处理!!

算法设计与分析课程设计

一 课程题目。零钱问题贪心算法实现。二 课程摘要。1 题目描述。使用贪心算法设计思想设计算法实现找零钱问题。例题13 4一个小孩买了价值少于1美元的糖,并将1美元的钱交给售货员。售货员希望用数目最少的硬币找给小孩。假设提供了数目不限的面值为25美分 10美分 5美分 及1美分的硬币。售货员分步骤组成...

算法设计与分析课程设计

一 课程题目。零钱问题贪心算法实现。二 课程摘要。1 题目描述。使用贪心算法设计思想设计算法实现找零钱问题。例题13 4 一个小孩买了价值少于1美元的糖,并将1美元的钱交给售货员。售货员希望用数目最少的硬币找给小孩。假设提供了数目不限的面值为2 5美分 1 0美分 5美分 及1美分的硬币。售货员分步...

算法分析与设计课程设计

课程名称 算法分析与设计课程设计 设计题目 砸手机游戏 课程设计 大作业 报告。一 课题背景。中国民族原创网络游戏为中国网络游戏产业所做出了巨大贡献,民族原创网络游戏已经成为产业发展的主导力量。同样在中国自主研发的民族原创网络游戏已经真正成为中国游戏市场的主导力量。网络游戏是通过信息网络传播和实现的...