- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第1页,共29页,星期日,2025年,2月5日1.递归及其性质递归算法是一种自身直接或间接调用自身的算法使用递归技术使得算法简单明了、易于理解、容易编程和验证。使用递归的程序往往很简单系统对所有的子程序调用一视同仁,并不区分是不是调用了自身。也就是说,系统并不刻意发现递归成分。这是由子程序调用机制决定的系统用栈实现子程序调用,也就是用栈实现递归。对比不使用递归,栈结构的操作和维护是额外的时空开销第2页,共29页,星期日,2025年,2月5日2.分治法的设计原理分治法是把一个问题分解成多个子问题进行处理,然后把子问题的解综合处理,得到原问题的解划分所得的子问题与原问题结构上等价如果子问题太大,可以把子问题继续划分,直至划分得到的子问题能够直接求解分治法的两个重要操作是:分解和综合。其时间复杂度也全部由这二者决定,确切的时间复杂度由二者的对比关系决定第3页,共29页,星期日,2025年,2月5日3.分治法的复杂度推导示例divide_and_conquer(p(n)){if((n=n0)returnadhoc(p(n));//基础项else{dividepintop1,p2,...,pk;//分for(i=1;i=k;i++)//治yi=divide_and_conquer(pi);returnmerge(y1,y2,...,yk);//合}}第4页,共29页,星期日,2025年,2月5日问题的递归方程:假定n=km,变换原方程得:第5页,共29页,星期日,2025年,2月5日4.分治法的复杂度性质递归方程:x=1时的解:通解:符合该条件的分治是多项式级别的时间复杂度a=c是临界点,ac是真正意义上的分治;ac是减治第6页,共29页,星期日,2025年,2月5日5.快速排序理想的快速排序算法的复杂度递归方程如下,因为a=c=2,所以其复杂度为O(nlogn):快速排序的时间复杂度最好情况下是O(nlogn),最坏情况下是O(n2),平均情况是O(nlogn)可以使用辅助技术选取合理的中轴当问题规模较小的时候,可以采用其他排序手法n用于分,2f(n/2)用于治第7页,共29页,星期日,2025年,2月5日6.平面最接近点对6.1问题描述6.2分治法示意6.3分治法求解最近点对问题复杂度分析第8页,共29页,星期日,2025年,2月5日6.1问题描述给定平面上的n个点的坐标,求出两两距离的最小值及其对应的点对两点间的距离可以用勾股定理求得最直观的解法是点之间循环两两求距离,记录其最小值和点对第9页,共29页,星期日,2025年,2月5日6.2分治法示意abcdefghiacbedfihgfgadbhceiacbefihgdadbcefghi这两个数组逻辑上产生,没有物理上产生这两个数组物理上产生了第10页,共29页,星期日,2025年,2月5日abcdefghi把问题分解为左右两部分,左右分别求得解,左右最小值中取较小的一个d,作为中间部分最小值的参考中间部分按照纵坐标序列,每个点只需要比较它上面的7个点即可如果中间部分得到的最小值更小,则取这个值,否则取d。ddd左边的4个格中不可能超过4个点,右边也是第11页,共29页,星期日,2025年,2月5日6.3分治法求解最近点对问题复杂度分析复杂度函数递归方程:用分治法求解平面最近点对问题的时间复杂度是O(nlogn)–因为a=c=2用分治法求解平面最近点对问题的最大空间使用是O(nlogn)–但因为调用左右两部分有先后之分,因此空间复杂度为O(n)上式中,n用于分,2f(n/2)用于治,7n用于合第12页,共29页,星期日,2025年,2月5日7.选择问题7.1解法示例7.2算法中剩余部分序列大小估计7.3分治法求解选择问题复杂度分析第13页,共29页,星期日,2025年,2月5日7.1解法示例求21个元素中的第8小元素:51,57,49,35,11,43,37,3,13,52,6,9,25,32,54,16,5,41,7,23,18把前面的20个元素划分为5组,最后一个元素不处理,得到4组:(51,57,49,35,11),(43,37,3,13,52),(6,9,25
您可能关注的文档
最近下载
- Asprova高精度排程软件Ver.5.0用户手册.pdf
- 义务教育劳动课程标准(2022年版).pdf VIP
- 群文阅读:《硝烟中的爱国者》PPT课件38页.pptx
- 江苏省南京市联合体2024-2025学年九年级(上)期末物理试卷(含答案).pdf VIP
- 《六度人脉》导读.ppt VIP
- 2024年执业药师(药学四科合一)考试真题.pdf VIP
- 2025初中英语语法思维导图+练习(详细).docx
- 新疆克拉玛依市独山子区综合基础知识历年真题汇总 (含答案解析).docx VIP
- 【德科地产频道·万科杭州】启动:超级底盘(上).pdf VIP
- 2024年江苏省普通高中学业水平合格性考试调研学生物试题(解析版).docx VIP
原创力文档


文档评论(0)