- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 算法:程序与计算系统的灵魂张丽杰哈尔滨工业大学计算学部教授zlj@hit.edu.cn第9章 算法:程序与计算系统的灵魂一、算法的基本概念二、建立问题的数学模型---数学建模三、算法策略选择---算法思想四、算法设计---算法思想的精确表达五、算法的实现--算法的程序设计六、算法的模拟与分析本章导图自然/社会问题自然/社会问题的求解结果一、算法的基本概念算法的重要性符号化,计算化再语义化执行化算法算法的结果程序化产生程序执行高级语言程序编译程序执行汇编语言程序“是否会编程序”,本质上是“能否想出求解问题的算法”,其次才是将算法用计算机可以识别的形式书写出来汇编执行化机器级程序--机器指令运算器和控制器(CPU)-执行0/1化信号化存储用0/1编码:指令和数据存储器:0/1存与取一、算法的基本概念理解算法类问题求解框架一、算法的基本概念什么是算法?算法---计算机与软件的灵魂。“算法”(Algorithm)一词源于阿拉伯数学家阿科瓦里茨米(AlKhowarizmi),其在公元825年写了著名的《波斯教科书》(Persian Textbook),书中概括了进行四则算术运算的计算规则。算法是一个有穷规则的集合,它用规则规定了解决某一特定类型问题的运算序列,或者规定了任务执行或问题求解的一系列步骤。如音乐乐谱、太极拳谱等都可看作广义的算法一、算法的基本概念算法示例寻找两个正整数的最大公约数的欧几里德算法输入:正整数M和正整数N输出:M和N的最大公约数(设MN)算法步骤:Step 1. M除以N,记余数为RStep 2. 如果R不是0,将N的值赋给M, R的值赋给N, 返回Step 1; 否则, 最大公约数是N, 输出N, 算法结束。一、算法的基本概念算法的五个特征寻找两个正整数的最大公约数的欧几里德算法输入:正整数M和正整数N输出:M和N的最大公约数(设MN)算法步骤:Step 1. M除以N,记余数为RStep 2. 如果R不是0,将N的值赋给M, R的值赋给N, 返回Step 1; 否则, 最大公约数是N, 输出N, 算法结束。有穷性:一个算法在执行有穷步规则之后必须结束。确定性:算法的每一个步骤必须要确切地定义,不得有歧义性。输入:算法有零个或多个的输入。输出:算法有一个或多个的输出/结果,即与输入有某个特定关系的量。能行性:算法中有待执行的运算和操作必须是相当基本的(可以由机器自动完成),并能在有限时间内完成。基本运算:除法、赋值、逻辑判断典型的“重复/循环”与“迭代”算法 问题 问题的求解数据结构 算法策略 程序设计 数学建模 控制结构 算法正确性 与复杂性 一、算法的基本概念算法相关的知识第9章 算法:程序与计算系统的灵魂一、算法的基本概念二、建立问题的数学模型---数学建模三、算法策略选择---算法思想四、算法设计---算法思想的精确表达五、算法的实现--算法的程序设计六、算法的模拟与分析本章导图这个算法是 怎样的呢?二、建立问题的数学模型---数学建模算法类问题求解的第一步就是数学建模数学建模是用数学语言描述实际现象的过程,即建立数学模型的过程。数学模型是对实际问题的一种数学表述,是关于部分现实世界为某种目的的一个抽象的简化的数学结构。【示例】哥尼斯堡七桥问题:“寻找走遍这7座桥且只许走过每座桥一次最后又回到原出发点的路径”。这个问题无解!无解的问题还用构造算法吗?二、建立问题的数学模型---数学建模将社会/自然问题 转化为 数学问题哥尼斯堡七桥问题:抽象成一个“图(Graph)” ,由节点和边所构成的一种结构。陆地--?节点连接陆地的桥梁--?连接节点的边由一个节点出发,又回到原出发节点,则连接该节点的边数是否应为偶数?二、建立问题的数学模型---数学建模数学模型,可描述一般性问题哥尼斯堡七桥问题:“寻找走遍这7座桥且只许走过每座桥一次最后又回到原出发点的路径”一般性问题:“对给定的任意一个河道图与任意多座桥判定可能不可能每座桥恰好走过一次?”。如能抽象成数学模型,则可将一个具体问题的求解,推广为一类问题的求解!节点的 “度” 奇度 节点偶度 节点欧拉回路-欧拉图入度/出度无向图有向图经过图中每节点一次且仅一次的回路经过图中每边一次且仅一次的回路“图论”专门讲这方面的内容哟!哈密尔顿 回路-哈密尔顿图二、建立问题的数学模型---数学建模数学模型,可发现不同类别的问题及其性质“连通----两个节点间有路径相连接” “可达----从一个节点出发能够到达另一个节点” “回路---从一个节点出发最后又回到该节点的一条路径”二、建立问题的数学模型---数学建模数学模型,可发现问题求解的基本思路凡是由偶度点组成的连通图,一定可以一笔画成。画时可以把任一偶度点为起点,最后一定能以这个点为终点画完此图;凡是只有两个奇度点的
原创力文档


文档评论(0)