 
         
         
         
         
        版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
算法设计与分析概率算法-舍伍德信息工程大学国家级实验教学示范中心计算机学科组规划教材算法设计与分析Python案例详解微课视频版当一个确定性算法的平均和最坏时间复杂度差别较大时,可在确定性算法中引入随机性将确定算法改造为概率算法。这类通过引入随机性减少算法的最坏情形对应输入的出现次数的算法称为舍伍德算法。
对确定性算法A,记输入实例I的计算时间为tA(I)。设Dn是算法A的输入规模为n的全体实例,可能存在I∈Dn使得。目标:实现概率算法B,使得对规模为n的问题的每个实例均有。其中,s(n)与相比可忽略。defkth_small(a,b,e,k):#在a[b]~a[e]中找第k小元素ifb>eork<1ork>e-b+1:return-1p=partition(a,b,e)m=p-bifk==m+1:returna[p]ifk<m+1:returnkth_small(a,b,p-1,k)returnkth_small(a,p+1,e,k-m-1)例:选择第k小元素defpartition(a,b,e):#将a[b]~a[e]以基准数为标准分为三部分i=bj=e
x=a[b]whilei<j:#从两边开始搜索与基准数进行比较whilei<janda[j]>=x:j-=1ifi<j:a[i]=a[j]i+=1whilei<janda[i]<x:i+=1ifi<j:a[j]=a[i]j-=1a[i]=xreturni舍伍德算法实现:选择第k小元素defpartition(a,b,e):#将a[b]~a[e]以基准数为标准分为三部分i=bj=ek=b+randint(0,e-b)#随机选择基准元素a[b],a[k]=a[k],a[b]#将随机选择的基准元素与首位元素互换x=a[b]whilei<j:whilei<janda[j]>=x:j-=1ifi<j:a[i]=a[j]i+=1whilei<janda[i]<x:i+=1ifi<j:a[j]=a[i]j-=1a[i]=xreturni优势:
对所有实例的计算时间相对均匀,计算总能求得问题的一个解,且求得的解总是正确的。关键:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全负责人考试题库软件及答案解析
- 内江市护理员考试题库及答案解析
- 铝合金安全员考试题库及答案解析
- 司法考试真题库及答案
- 2025年房地产经纪人《市场营销》备考题库及答案解析
- 2024-2025年一级建造师建筑工程真题汇编试卷案例分析详解版备考资料
- 2025年注册验船师资格考试(A级船舶检验专业法律法规)经典试题及答案一
- 母婴护理职业培训题库及答案解析
- 机械加工材料切割工9S执行考核试卷含答案
- 邢台市安全培训考试题及答案解析
- TQ900架桥机安拆专项施工方案
- 23秋国家开放大学《外国教育简史》形考任务1-3参考答案
- 中考英语必背单词汇总手册(打印版)
- 虫鼠害检查记录表
- 2023南方区域AGC发电单元调频指标计算规范2019版
- 工银金融资产投资有限公司2023年校园招聘人才历年试题(常考点甄选)含答案带详解析
- 《军事理论与技能训练》第一章 军事思想
- qdslrdashboard应用软件使用说明
- 住院患者静脉血栓栓塞症的预防护理(试题及答案)
- 如何提高静脉穿刺技术
- 2022年南京六合经济技术开发集团有限公司招聘笔试试题及答案解析
 
            
评论
0/150
提交评论