- 1、本文档共675页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《GPS图形算法基础》全套教学课件(共12章)
地理信息系统算法
第一章 算法设计和分析 第一节 概述第二节 算法设计原则第三节 算法复杂性的度量第四节 最优算法
第一节 概述一、算法的概念:算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出
二、算法特性:有穷性、确定性、可行性、有输入、有输出。1.有穷性:对于任意一组合法输入值,在执行有穷步骤之后一定能结束,即:算法中的每个步骤都能在有限时间内完成。2.确定性:对于每种情况下所应执行的操作,在算法中都有确切的规定,使算法的执行者或阅读者都能明确其含义及如何执行。并且在任何条件下,算法都只有一条执行路径。3.可行性:算法中的所有操作都必须足够基本,都可以通过已经实现的基本操作运算有限次实现之。4.有输入:作为算法加工对象的量值,通常体现为算法中的一组变量。有些输入量需要在算法执行过程中输入,而有的算法表面上可以没有输入,实际上已被嵌入算法之中。5.有输出:它是一组与“输入”有确定关系的量值,是算法进行信息加工后得到的结果,这种确定关系即为算法的功能。第一节 概述
三、算法的几个要点:1.算法的每一个步骤都必须清晰、明确。2.算法所处理的输入的值域必须仔细定义。 4.可能存在几种解决相同问题的算法。5.针对同一个问题的算法可能会基于完全不同的解题思路,而且解题的速度也会有明显区别。 第一节 概述
Example求两个正整数m,n的最大公约数gcd(m,n)1.同一个算法有不同的表达方式:(1)第一节 概述gcd(m,n)的欧几里得算法 第一步:如果n=0,返回m的值作 为结果,结束;否则进入第二步第二步:用n去除m,将余数赋给r。第三步:将n的值赋给m,将r的值 赋给n,回第一步。
(2)算法Euclid(m,n)//使用欧几里得算法计算gcd(m,n)//输入:两个不全为0的非负整数m,n//输出:m,n的最大公约数While n!=0 dor m mod nm nn rReturn m第一节 概述
2.同一个问题有不同的解决方法:(1)gcd(m,n)的连续整数检测算法 第一步:将min{m,n}的值赋给t。 第二步:m除以t,如果余数为0,则进入第三步;否则, 进入第四步。 第三步:n除以t,如果余数为0 ,则返回t值作为结果; 否则,进入第四步。 第四步:把t的值减1。返回第二步。(2)gcd(m,n)的中学计算算法 第一步:找到m的所有质因数。 第二步:找到n的所有质因数 第三步:从第一步和第二步中求得的质因数分解式找出所 有的公因数。 第四步:将第三步中找的质因数相乘,其结果作为给定数 字的最大公因数。第一节 概述
算法问题求解的过程: 第一节 概述理解问题决定:计算方法。精确和近似的解法。设计算法正确性证明分析算法根据算法写代码
设计算法前做的第一件事情。 仔细阅读问题的描述 提出疑问理解问题: 手工处理一些实例 考虑特殊情况 确定输入 抽象出问题,用数学表达式描述选择精确解和近似解: 某些重要的问题无法求得精确解 某些问题利用精确解速度慢,无法接受第一节 概述
算法设计技术:使用算法解题的一般性方法,用于解决计算领域的多种问题。详细表述算法的方法:自然语言:用我们日常生活中的自然语言(可以是中文形式, 也可以是英文形式)也可以描述算法。伪代码:我们可以用数学语言或约定的符号语言来描述算法。流程图:一个算法可以用流程图的方式来描述,输入输出、判 断、处理分别用不同的框图表示,用箭头表示流程的流 向。这是一种描述算法的较好方法,目前在一些高级语 言程序设计中仍然采用。也有其他的图形辅助工具。第一节 概述
证明算法的正确性: 证明对于每一个合法的输入,该算法都会在有限的时间内输出一个满足要求的结果。 一般方法:数学归纳法证明算法的正确性与不正确哪一个更容易?分析算法: 算法有两种效率:时间效率和空间效率。 算法的另外两个特性:简单性和一般性。第一节 概述
为算法写代码: 用计算机程序实现算法。 在把算法转变为程序的过程中,可能会
文档评论(0)