华南理工大学广州学院算法设计与分析期末考试复习.ppt

华南理工大学广州学院算法设计与分析期末考试复习.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
快速排序 设计思想 以第一个记录作为轴值,对待排序序列进行划分的过程为: (1)初始化:取第一个记录作为基准,设置两个参数i,j分别用来指示将要与基准记录进行比较的左侧记录位置和右侧记录位置,也就是本次划分的区间; (2)右侧扫描过程:将基准记录与j指向的记录进行比较,如果j指向记录的关键码大,则j前移一个记录位置。重复右侧扫描过程,直到右侧的记录小(即反序),若i<j,则将基准记录与j指向的记录进行交换; (3)左侧扫描过程:将基准记录与i指向的记录进行比较,如果i指向记录的关键码小,则i后移一个记录位置。重复左侧扫描过程,直到左侧的记录大(即反序),若i<j,则将基准记录与i指向的记录交换; (4)重复(2)(3)步,直到i与j指向同一位置,即基准记录最终的位置。 最大子段和问题 设计思想 复习 减治法的基本思想(理解+应用): 原问题的解只存在于其中一个较小规模的子问题中,所以,只需求解其中一个较小规模的子问题就可以得到原问题的解。 熟记哪些问题使用了减治法进行解决:折半查找,二叉树查找,插入排序,堆排序,选择问题,淘汰赛冠军问题,假币问题(8枚硬币不知道假币轻重);并熟记这些问题的时间复杂度: 第五章 减治法 * 复习 Page * * Page * 其中: 折半查找:在有序表中,取中间记录作为比较对象,若给定值与中间记录的关键码相等,则查找成功;若给定值小于中间记录的关键码,则在中间记录的左半区继续查找;若给定值大于中间记录的关键码,则在中间记录的右半区继续查找,O(log2n)。 插入排序:依次将待排序序列中的每一个记录插入到一个已排好序的序列中,直到全部记录都排好序,O(n2) 第五章 减治法 * 复习 Page * * Page * 其中: 选择问题:考虑快速排序中的划分过程,选定一个轴值将序列ri ~ rj进行划分,使得比轴值小的元素都位于轴值的左侧,比轴值大的元素都位于轴值的右侧,假定轴值的最终位置是s,则: (1)若k=s,则rs就是第k小元素; (2)若ks,则第k小元素一定在轴值前半区中; (3)若ks,则第k小元素一定在轴值后半区中; 第五章 减治法 * 复习 Page * * Page * 其中: 假币问题(8枚硬币不知道假币轻重):从八枚硬币中任取六枚a,b,c,d,e,f,在天平两端各放三枚进行比较。假设a,b,c三枚放在天平的一端,d,e,f三枚放在天平的另一端,可能出现三种比较结果(再根据三种比较结果进行分析) ⑴ a+b+cd+e+f ⑵ a+b+c=d+e+f ⑶ a+b+cd+e+f 第五章 减治法 * 复习 Page * * Page * 折半查找问题的设计思想和伪代码(可能出简答题) 给一个数字序列,要求采用折半查找,找某个数,写出求解的过程。 第五章 减治法 折半查找问题 设计思想 在有序表中,取中间记录作为比较对象, 若给定值与中间记录的关键码相等,则查找成功; 若给定值小于中间记录的关键码,则在中间记录的左半区继 续查找; 若给定值大于中间记录的关键码,则在中间记录的右半区继 续查找。不断重复上述过程,直到查找成功,或所查找的区 域无记录,查找失败。 [ r1 … … … rmid-1 ] rmid [ rmid+1 … … … rn ] (mid=(1+n)/2) 如果krmid查找这里 如果krmid查找这里 k * 第5章 减治法 Page * 例:查找值为14的记录的过程: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 7 14 18 21 23 29 31 35 38 42 46 49 52 low=1 high=13 mid=7 high=6 mid=3 high=2 mid=1 3114 1814 714 low=2 mid=2 14=14 查找成功! 选择下列数字序列中的第3小的元素 12, 5, 8, 44, 23, 7, 9, 2 * 复习 Page * * Page * 动态规划法的基本思想(重要!自底向上,理解+应用): 将待求解问题分解成若干个相互重叠的子问题,每个子问题对应决策过程的一个阶段,将子问题的解求解一次并填入表中,当需要再次求解此子问题时,可以通过查表获得该子问题的解而不用再次求解。 第六章 动态规划法 * 复习 Page * * Page * 动态规划法的求解过程: 分成相互重叠的子问题; 求解子问题,填表; 自底向上计算出原问题的解。 第六章 动态规划法 * 复习

文档评论(0)

kch + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年10月08日上传了教师资格证

1亿VIP精品文档

相关文档