朱大鸣全套配套课件算法分析与设计 算法设计与分析-2.ppt

朱大鸣全套配套课件算法分析与设计 算法设计与分析-2.ppt

ID:51977842

大小:267.00 KB

页数:39页

时间:2020-03-26

朱大鸣全套配套课件算法分析与设计 算法设计与分析-2.ppt_第1页
朱大鸣全套配套课件算法分析与设计 算法设计与分析-2.ppt_第2页
朱大鸣全套配套课件算法分析与设计 算法设计与分析-2.ppt_第3页
朱大鸣全套配套课件算法分析与设计 算法设计与分析-2.ppt_第4页
朱大鸣全套配套课件算法分析与设计 算法设计与分析-2.ppt_第5页
资源描述:

《朱大鸣全套配套课件算法分析与设计 算法设计与分析-2.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、上次内容:(1)算法分析技术,问题,算法,程序,时间复杂性,空间复杂性。(2)递归算法分析,递推方程解法。猜测法(3)算法设计技术,分而治之。合并排序,merge-sort(4)问题:xn,冒泡排序,合并排序,比赛日程表。§2.2贪心技术(greedy)例子:硬币类型,25分,10分,5分,1分。将63分钱兑换成硬币,最少兑换几枚硬币?贪心算法:25,25,10,1,1,1,先换大的后换小的。实际上以上解是最优的,与类型有关。11,5,1分三种硬币,兑换15分钱,贪心算法解为:11,1,1,1,1实际上,5,5,5是最优解。并不是最优解。贪心技术可以找到可行解,未必能找到最优解。如同现

2、实生活中的局部利益与整体利益。寻求当前最好,未必全局最好。当前收益最大为目标/当前损失最小为目标。大学里的内容,Dijkstra最短路算法,Kruskal最小生成树算法,都是贪心算法。例2.1货郎问题,现在是非常有名的问题,以后会不断讨论旅游:经过所有城市,每个城市经过一次,仅一次。用城市排列表示。实例:城市集合C={c1,c2,…,cn},距离d(ci,cj),1i

3、边,再选第二条边,在不破坏旅游情况下选择最短的,一直到最后一条边。选择一些边,形成旅游,最后要形成圈才行。先选(c4,c5),下一步选(c1,c2),(c2,c3),(c5,c6)三条边长相同,下一步选(c1,c3)不允许。只能选(c3,c4),最后只能选(c1,c6)。得到货郎旅游为:C1,C2,C3,C4,C5,C6,C1§2.3动态规划技术(DYNAMICprogramming)动态规划技术应用广泛,有许多问题也设计动态规划算法,一定能寻找到最优解。遍历解空间中的所有解,从而找到所需要的或最优的。难理解把所有解一点一点构造出来,构造所有可能的解,其中包含最优解。是一种找到最优解的

4、方法,通过规划方法把所有可能解规划遍历出来。实际上要把问题实例的解一点一点组装起来,先组装规模小的实例的解,在逐渐增大实例规模,得到其解。例2.2A,B两组进行比赛,对于确定的n,哪组先胜n局则哪组获胜。A,B能力相当,一局取胜概率都为1/2。P(i,j):A组需要取胜i局才能获胜,B组需要取胜j局才能获胜,在这种情况下,最终导致A取胜的概率。如:n=4,A已经胜2局,B已经胜1局,则i=2,j=3,此时A取胜的概率为P(2,3)P(i,j)怎么计算?P(0,j>0)=1,P(i>0,0)=0。P(i-1,j):A取胜一局后最终取胜的概率,P(i,j-1):B取胜一局而A最终取胜的概率

5、。概率计算公式:P(i,j)=计算任意的P(i,j),对任意的i和j时间复杂度是多少?列出递推关系,编递归程序实现的话可能比较危险,时间复杂度用下面方法分析。下面的递归算法容易给出:P(i,j)Ifi=0andj>0return1Ifi>0andj=0return0Ifi>0andj>0returni+j=n,求T(n)时间复杂度。T(1)=CT(n)=2T(n-1)+d,i+j=n可以得到T(n)=O(2n),但是可以设计另一个算法.下面的表就是一个算法。99/12857/6431/321566/12842/6426/3215/161429/12822/6416/3211/167/8

6、137/646/325/161/23/4121/321/161/81/41/211000000543210iji+j=n,T(n)Cn2,T(n)=O(n2)动态规划的含义在哪里,后面的计算要用到前面的计算结果。必须存储中间结果,用到中间结果。一点一点算,从右下角往左上角依次计算。问题:货郎问题怎样设计动态规划算法?§2.4回溯技术:Backtracking一棵树从根开始,走遍所有节点,怎么走,要用到回溯技术,树搜索在智能系统中非常有用。每个问题都是树搜索。数据库删除记录就要用到回溯算法,研究生到现在为止尚未实现该程序。例子,两人x和o下棋的例子,分别以次往方格里面加入棋子,谁先

7、站满一行一列或一斜行(列)则取胜。目标是为了讲搜索和回溯。为了决定下一步怎么走,必须搜索以后的多种可能性,所以搜索每一种下法。为了让计算机知道什么叫好什么叫坏,给每个搜索节点设置一个估价函数。原则是对一方有利则数值越大,另一方有利则数值越小。通过一个例子讲回溯,搜索的好坏用得分表示。搜遍所有可能情况才知道哪个好哪个坏。(1)得分,-1(胜0负),0(平),1(0胜负)(2)最大最小,选择对自己最有利的策略(3)深度优先搜索,xxx000xx

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。