算法设计与分析经典题目
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《算法设计与分析》第二次作业
1、 查找算法 顺序查找,二分查找,哈希查找,插值查找,二叉树查找等等。 对上述若干个算法进行时间复杂性分析,并设计实验程序验证分析结果。
2、字符串匹配算法(BF,KMP,BM )
给定一个文本,在该文本中查找并定位任意给定字符串。 ⑴ 实现BF 算法;
⑵ 实现BF 算法的改进算法:KMP 算法和BM 算法;
⑶对上述三个算法进行时间复杂性分析,并设计实验程序验证分析结果。
3、最近对问题
设p 1=(x 1, y 1), p 2=(x 2, y 2), …, p n =(x n , y n
)是平面上n 个点构成的集合S ,设计算法找出集合S 中距离最近的点对。
(1)分别用蛮力法和分治法求解最近对问题;
(2)分析算法的时间性能,设计实验程序验证分析结论。
4、假币问题
在八枚外观相同的硬币中,有一枚是假币,并且已知假币与真币的重量不同,但不知道假币与真币相比较轻还是较重。可以通过一架天平来任意比较两组硬币,设计一个高效的算法来检测出这枚假币。 要求:
(1)设计减治算法实现八枚硬币问题;
(2)设计实验程序,考察用减治技术设计的算法是否高效;(3)扩展算法,使之能处理n枚硬币中有1枚假币的问题。