算法分析与计算复杂性理论.ppt
《算法分析与计算复杂性理论.ppt》由会员分享,可在线阅读,更多相关《算法分析与计算复杂性理论.ppt(37页珍藏版)》请在三一办公上搜索。
1、1,算法分析与计算复杂性理论,2,课程简介,课程名称 算法分析与计算复杂性理论 Analysis of Algorithms and Theory of Computational Complexity 基本目的掌握组合算法设计的基本技术掌握算法分析的基本方法掌握计算复杂性理论的基本概念学习应用算法理论处理实际问题,3,课程内容,顺序算法设计的基本技术 分治策略 动态规划 回溯算法 贪心法 概率算法顺序算法分析的基本方法 评价算法的标准 算法复杂性的估计 问题复杂性的下界 算法分析的实例计算复杂性理论 Turing机 计算复杂性的概念 NP完全性理论及其应用 NP完全理论的拓广,预计进度安排,
2、5,教材与参考书,1.Algorithm Design,Jon Kleinberg,Eva Tardos,Addison-Wesley,清华大学出版社影印版,2006.2.Introduction to Algorithms(Second Edtion),Thomas H.Cormen,Charles E.Leiserson,Ronald L.Rivest,The MIT Press 2001.高教出版社影印版,2002.3.计算机和难解性:NP完全性理论导引,M.R.加里,D.S.约翰逊,张立昂等译,科学出版社,1987.*4.计算复杂性导论,堵丁柱,葛可一,王洁,高教出版社2002.*5.
3、Limits to Parallel Computation:P-Completeness Theory,Raymond Greenlaw,H.James Hoover,Walter L.Ruzzo,Oxford University Press,1995.,学习安排,成绩评定:小论文:结合研究工作,50%期末笔试:50%,7,引言:理论上的可计算与现实上的可计算,算法研究的重要性理论上的可计算 可计算性理论 现实上的可计算 计算复杂性理论,8,投资问题,问题:m元钱,投资给n个项目,效益函数 fi(x),表示第 i 个项目投入x元钱的效益,i=1,2,n.如何分配每个项目的钱数使得总效益最大
4、?,采用什么算法?效率怎样?,令xi 是第 i 个项目的钱数,9,蛮力算法的代价,Stirling公式:非负整数解 的个数估计:蛮力算法穷举法代价太大能否利用解之间的依赖关系找到更好的算法?结论:需要算法设计技术,10,T(n)=2 T(n1)+1,T(1)=1,,A B C,思考:是否存在更好的解法?Reve难题:Hanoi塔变种,柱数增加,允许盘子相等.其他变种:奇偶盘号分别放置,解得 T(n)=2n 1,1秒移1个,64个盘子要多少时间?(5000亿年),Hanoi塔问题,11,其他问题,搜索问题 输入:排好序的数组 L,x 输出:x 是否在 L 中?如果在输出它的下标排序问题 输入:n
5、个数 输出:按递增顺序排好的n个数选择问题 输入:n个数的集合S,正整数k(1kn)输出:S中第 k 小的数需要:现有的算法中哪个算法最好?是否存在更有效的算法?,12,Algorithm+Data Structure=Programming,好的算法提高求解问题的效率节省存储空间 需要解决的问题问题寻找求解算法 算法设计技术算法算法的评价 算法分析技术算法类问题复杂度的评价 问题复杂性分析问题类能够求解的边界 计算复杂性理论,13,算法研究的重要性,算法设计与分析技术在计算机科学与技术领域有着重要的应用背景 算法设计分析与计算复杂性理论的研究是计算机科学技术的核心研究领域 1966-2005
6、期间,Turing奖获奖50人,其中10人以算法设计,7人以计算理论、自动机和复杂性研究领域的杰出贡献获奖计算复杂性理论的核心课题“P=NP?”是本世纪7个最重要的数学问题之一通过算法设计与分析课程的训练对提高学生的素质和分析问题解决问题的能力有着重要的作用,14,理论上的可计算:可计算性理论,研究目标 确定什么问题是可计算的,即存在求解算法合理的计算模型 已有的:递归函数、Turing机、演算、Post系统等 条件:计算一个函数只要有限条指令 每条指令可以由模型中的有限个计算步骤完成 指令执行的过程是确定的核心论题:Church-Turing论题 如果一个函数在某个合理的计算模型上可计算,那
7、么它在Turing机上也是可计算的 可计算性是不依赖于计算模型的客观性质,15,算法至少具有指数时间:理论上可计算难解的多项式时间的算法:现实上可计算多项式时间可解的对数多项式时间的算法:高度并行可解的,理论上与现实上的可计算性,16,计算复杂性理论,内容算法复杂度算法所使用的时间、空间的估计问题复杂度估计问题的难度术语和概念问题算法算法的时间复杂度函数的阶多项式时间的算法与指数时间的算法问题的复杂度分析,17,例1 货郎担问题问题:有穷个城市的集合C=c1,c2,cm,正整数d(ci,cj)=d(cj,ci),1 i j m.解:使得 k1,k2,km是1,2,m 的置换且满足,问题,问题:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法 分析 计算复杂性 理论
链接地址:https://www.31ppt.com/p-6133632.html