算法分析与设计报告讲义.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中 国 地 质 大 学 研究生课程论文封面 课程名称 算法分析与设计 教师姓名 研究生姓名 研究生学号 研究生专业 计算机技术 所在院系 计算机学院 类别: B.硕士 日期: 2014 年 1 月 8 日 评 语 对课程论文的评语: 平时成绩: 课程论文成绩: 总 成 绩: 评阅人签名: 注:1、无评阅人签名成绩无效; 2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效; 3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。 第一章 算法导引 1.1算法 算法:用计算机求解问题的步骤、规则 内存空间——初始状态—————终止状态 有限状态机 算法的五个特性: 输出:一个算法产生一个或多个输出 从内存——认识状态 输入:一个算法有0个输入或多个输入 input a,b 无二义性:算法的每一种运算必须要有确切的定义,即每一种运算应该执行何种动作必须是相当清楚的、无二义性的(人和计算机、智能、确定的、机器;人机象棋:有哪些信誉好的足球投注网站)。 能行性: (1)人能做,机器没法做:能够形式化,没有办法写出算法 (2)股票预测、彩票:模型 有限性:可计算问题、有限的、可忍耐 算法设计:自动化、自动程序设计、公式发现、公式挖掘、知识发现 算法验证:设计—表示(语言)—确认—分析—测试程序 1.2算法分析 数学模型: 1.串行算法,冯诺依曼机 2.均匀存贮,存贮空间足够大 3.基本运算时间确定 基本概念: 1.问题规模:与参数有关 2.频率计数 不分析算法具体执行时间,分析问题复杂性:问题规模增大时的规律 根据复杂性,将算法分为两类: 1.多项式时间算法P:C,㏒Ω(g(n))下界 1.3小结 老师首先带领我们回顾了本科阶段的算法基础相关知识,对于没有系统学习过算法知识的我来说,更是一种知识入门,使我对这门课程有一些初步的了解。然后在对算法进行分析时,不分析算法具体的执行时间,而是分析问题的复杂性(问题规模增大时的规律)。根据算法的特点可以将要求解的问题分为两类:离散型和连续型。离散型问题需要讨论问题的规模,如果是多项式时间复杂度则称为P问题;如果是指数时间复杂度则称为NP问题。对于连续型问题,需要讨论算法的收敛性。 第二章 分治法 2.1一般方法 在求解问题时,为了将问题简化,将实际问题转变为数学问题,将数学问题转变为代数问题,将代数问题转变为解方程问题,将解方程问题转变为解线性方程组问题。 求解问题的技术: 1.化难为易的校正技术:例如求f(x)=a-x2=0; 2.化粗为精的松弛技术:直接法,间接法,例如求圆的面积(割圆法) 3.化大为小的缩减技术:f(n)=n*f(n-1),f(1)=1问题性质不变 分治法的思想:将整个问题分为若干个小问题分而治之,问题的性质不变。它的求解可用一个递归过程来表示。 2.2二分检索 已知一个按非降次序排列的元素表a1,a2,…,an,要求判定某给定元素x是否在该表中出现。问题规模O(㏒n) 2.3归并分类(排序) Procedure mergesort(low,high) if lowhigh then mid (|(low+high)/2」 call mergesort(low,mid) call mergesort(mid+1,high) call mergesort(low,mid,high) end if 问题规模O(n㏒n) 2.4快速分类 反复对产生的文件进行划分 2.5斯特拉森矩阵乘法 问题规模O(n3) 2.6小结 分治法是一种用空间换时间的技术,通过将大规模的问题划分为小规模问题进行求解来降低求解难度,采用分治技术,问题首先必须能够分解,而且分解后,问题的性质并没有发生变化。采用分治技术的目的只是并行算法设计,降低算法时间复杂度。在本章老师主要讲解了分治法的基本递归求解,二分检索、归并分类、快速分类、斯特拉森矩阵乘法以及它们的时间复杂度的求解。 第三章 贪心法 3.1一般方法 概念:有n个输入,问题的解是这n个输入的一个子集,子集满足一组条件(约束条件),子集可能有很多,满足条件的子集叫做可行解,根据问题,人们设计一个函数,通过函数极值的计算,找到一个最优的可行解,叫做最优解。 离散优化问题 连续函数优化问题的分类: 1.函数优化问题:f(x):高维、非线性、不连续、没有明确的解析式;这类问题

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档