算法设计与分析实验指导书2013-3
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验项目三——八枚硬币问题
1.实验题目
在八枚外观相同的硬币中,有一枚是假币,并且已知假币与真币的重量不同,但不知道假币与真币相比较轻还是较重。可以通过一架天平来任意比较两组硬币,设计一个高效的算法来检测出这枚假币。
2.实验目的
(1)深刻理解并掌握减治法的设计思想;
(2)提高应用减治法设计算法的技能;
(3)理解这样一个观点:建立正确的模型对于问题的求解是非常重要的。3.实验要求
(1)设计减治算法实现八枚硬币问题;
(2)设计实验程序,考察用减治技术设计的算法是否高效;
(3)扩展算法,使之能处理n枚硬币中有1枚假币的问题。
4.实现提示
假设用一个数组B[n]表示硬币,元素B[i]中存放第i枚硬币的重量,其中n-1个元素的值都是相同的,只有一个元素与其他元素值不同,则当n=8时即代表八枚硬币问题。由于八枚硬币问题限制只允许使用天平比较大小,所以,算法中只能出现元素相加和比较语句。
1