算法设计与分析13年CH1.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.7 对偶与范式 算法设计与分析 林永钢 前言 旅行商问题Traveling Salesman Problem (TSP): 设有n个城市,已知任意两城市之间距离,现有一推销员想从某一城市出发巡回经过每一城市(且每城市只经过一次),最后又回到出发点,问如何找一条最短路径 。 穷举法的时间复杂性为O(n!) n = 21时,21! = 5.11×1019, 设每条路径需CPU时间为1ns ,则总共要1620多年才能完成。 前言 A survey of algorithmic design techniques. Abstract thinking. How to develop new algorithms for any problem that may arise. Be a great thinker and designer. Not: A list of algorithms - Learn their code - Trace them until work - Implement them - be a mundane programmer 前言:学习算法的意义 Story-1 前言:学习算法的意义 Story-2 前言:学习算法的意义 Story-3 前言:学习算法的意义 Story-4 (1) 皇后问题:这是高斯1850年提出的一个著名问题:国际象棋中的“皇后”在横向、直向、和斜向都能走步和吃子,问在n×n 格的棋盘上如何能摆上n个皇后而使她们都不能互相攻击。 (2)背包问题1:有一旅行者要从n种物品中选取不超过b千克重的行李随身携带,要求总价值最大。 例:设背包的容量为50千克。物品1重10千克,价值60元;物品2重20千克,价值100元;物品3重30千克,价值120元。求总价值最大。 (3)背包问题2:有一商人要从n种货物中选取不超过b千克重的行李随身携带,要求总价值最大。 例:设背包的容量为50千克。物品1有60千克,每千克价值60元;物品2有20千克,每千克价值100元;物品3有40千克,每千克价值120元。求总价值最大。 过桥问题 药品装箱问题 (5)着色:北京地图 着色问题 韦尔奇 ? 鲍威尔法(Welch Powell) 例 试用韦尔奇 ? 鲍威尔法对图进行着色。 前言 蚂蚁问题 本课程教材及主要参考书 [1] (教材)王晓东. 计算机算法设计与分析(第3版),电子工业出版社,2007 ISBN: 978-7-121-04278-2 [2] (美)科曼 (Cormen,T.H.).潘金贵译. 算法导论 (Introduction to Algorithms Second Edition),机械工业出版社,2006.9 课程内容 数学基础、递归与分治、动态规划、贪心法、回溯法、分支限界法等. 课程安排 24学时授课+8学时上机 成绩 平时成绩30%,期末闭卷成绩70% 算法入门 算法入门 一、算法设计与分析的研究对象 非数值问题 二、什么是算法 例1 已知两正整数m和n,求二者的最大公因子 算法1.1 欧几里德(Euclid)算法 输入 正整数m,n 输出 m和n的最大公因子 定理 对任意正整数m和任意非负整数n,并且mn ≥ 0 有 gcd(m,n)=gcd(n,m mod n) 如 gcd(24,18) = gcd(18,6) = gcd(6,0) = 6 整除的基本性质 若 a|b且a|c,则对任意的整数 m,n,有 a|(bm+cn). 证明 因为a|b且a|c, 故b=aq1和c=aq2. 于是, bm+cn=a(q1m+q2n), 所以, a|(bm+cn). 最大公约数(最大公因子) 定理 设a和b都是正整数, 且ab, a=bq+r 0rb 其中q和r都是正整数. 则: ①a和b的任一公约数也是b和r的公约数; ②b和r的任一公约数也是a和b的公约数; ③(a,b)=(b,r); a=bq+r ①a和b的公约数也是b和r的公约数; 证明 ①若d|a且d|b, 则d|(a-bq)即d|r. 这即表明: 若d是a和b的公约数, d必是b和r的公约数. ②若d|b且d|r, 则: d|(bq+r)即d|a. 这即是说若d是b和 r的公约数, d也必是a和b的公约数. S1 求余数:m除以n,令r是所得的余数,转S2 S2 判断余数:若r=0,则输出n的当前值,算法结束,否则转S3 S3 代替:m←n,n←r,转S1 算法的五个特征 1)有穷性 2)确定性 3

文档评论(0)

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

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

1亿VIP精品文档

相关文档