- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 问题求解与算法
5.1
5.2
计算思维
算法
2
5.1 计算思维
“计算思维是运用计算科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动”,“其本质就是抽象与自动化,即在不同层面进行抽象,以及将这些抽象机器化”。计算思维(设计与构造)、理论思维(推理与演绎)和实验思维(观察与总结)称为三大思维。
4
计算思维1
哥斯堡七桥问题
“寻找走遍这7座
桥且只许走过每座桥一次最后又回到原出发点的路径”
5
计算思维2
计算思维的特征
① 计算思维是人类求解问题的一条途径。
② 计算思维的过程可以由人执行也可以由计算机执行。
③ 计算思维是思想。
④ 计算思维是概念化,不是程序化。
计算思维在计算机学科中的体现
① “0和1”的思维。
②“指令”与“程序”的思维。
③“递归”的思维。
6
计算思维特征
冯·诺依曼计算机体现了存储程序与程序自动执行的基本思维,实现了在存储体系环境下,程序在操作系统管理下的执行的基本思维。
并行与分布计算环境应用于局域网/广域网的计算系统的构建,体现了在复杂环境程序如何被硬件并行、分布执行的思维。
云计算环境实现了由高性能计算结点和大容量磁盘存储结点结合,体现是计算资源虚拟化服务化的思维。
7
计算系统发展中的进化思维
其它学科均可应用计算手段进行学科问题的研究和创新。
学科融合是计算思维带给广泛的学科问题求解的一种思想、策略、方法和手段上的变化,为科学研究和科学应用提供新的思路、方法和技术,融合正在促进各学科的突破性发展。
思维是由一系列知识所构成的完整的解决问题的思路,其每个环节都需要知识的铺垫,基于一定的知识可理解每一个环节,通过“贯通”各个环节进而解决问题。计算思维是学科的灵魂、学科的重要思想,计算思维对各学科专业的影响是深远的。
8
计算思维对其他学科的影响
5.2 算法
概念
指解题方案准确而完整的描述,是一系列解决问题的方法步骤或清晰指令的陈述。代表着用系统的方法描述解决问题的策略机制。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。
要素:由操作与控制结构两个要素组成。
性质:确定性、可实现性、具有数据输入、具有数据输出、有穷性
描述方法有如:自然语言、流程图、伪代码和计算机语言。
10
算法1
步骤描述法,即用人们日常使用的语言和数学语言描述算法的步骤。
例如:sum=1+2+3+4+…+n求和问题的算法描述
Start of the algorithm(算法开始)
(1)输入N的值;
(2)设 i 的值为1;sum的值为0;
(3)如果 i=N,则执行第(4)步,否则转到第(7)步执行;
(4)计算 sum + i,并将结果赋给sum;
(5)计算 i+1,并将结果赋给i;
(6)返回到第3步继续执行;
(7)输出sum的结果。
End of the algorithm(算法结束)
1.自然语言(步骤描述法)
自然语言表示的算法容易出现二义性、不确定性等问题
算法描述
流程图的基本表示符号
矩形框:表示一组顺序执行的规则或者程序语句。
菱形框:表示条件判断,并根据判断结果执行不同的分支。
圆形框:表示算法或程序的开始或结束。
箭头线:表示算法或程序的走向。
2.程序流程图
三种控制结构的流程图表示方法示意
3.伪代码
4.计算机语言
也叫枚举法,就是通过把需要解决问题的所有可能情况逐一试验来找出符合条件的解的方法。
基本思想是按照问题要求确定问题解的大致范围,然后在此范围内对这些可能解列举,再判断所列举的可能问题解满足不满足问题的要求,直到所有可能解列举完毕。
在实际生活中,只有很少的一些问题是真正意义上的“毫无规律”,大多数仍有内在规律可循,所以使用穷举法在效率上就显得比较低下。
如求100以内的素数,需逐个判断。
15
穷举法
使一组数据,按照其中的某个或某些关键字的大小,按递增或递减的顺序排列起来的操作。
在大量数据的处理方面,一个优秀的算法可以节省大量的资源。
①直接插入排序
将一个记录插入到已排序好的有序表中,从而得到一个新的记录数增1的有序表。即:先将序列的第1个记录看成是一个有序的子序列,然后从第2个记录起逐个进行插入,直至整个序列有序为止。
16
排序算法1
②希尔排序
先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录“基本有序”时,再对全体记录进行依次直接插入排序。
17
排序算法2
③简单选择排序
在要排序的一组数中,选出最小(大)的一个数与第1个位置的数交换;然后在剩下的数当中再找最小(大)的与第2个位置的数交换,依次类推,直到第n-1个元素和第n个元素比较为止。
18
排序算法
3
④冒泡排序
在要排序的一组数中,对当前还未排好序的范围内的全
您可能关注的文档
- 第5章数据音频技术综述.ppt
- 道路运输车辆技术管理规定综述.pptx
- 道路运输驾驶员继续教育培训1综述.ppt
- 第2章孔、轴尺寸极限与配合综述.ppt
- 雾化专家共识分解.ppt
- 第2章控制工程控制系统的数学描述-V1.2综述.ppt
- 第5章搜索求解策略(AI应用3版)综述.ppt
- 道路运输企业车辆技术管理规范综述.ppt
- 道路筑养施工组织设计综述.docx
- 第5章搜索求解策略综述.ppt
- 森林群落发育及演替.ppt
- 2025届江苏省苏州市工业园区中考一模数学卷(含解析).pdf
- 高中历史选择题考试技术(四)考试技巧之逻辑判断 用“全面”的观点 高考历史做题方法指导.pptx
- 10,2酸和碱的中和反应课件--九年级化学人教版下册.pptx
- 2025届江苏省泰州市兴化市中考一模数学试卷(附解析).docx
- 2025届江苏省扬州市中考一模数学试卷.docx
- 2025届江苏省泰州市靖江市中考一模数学试卷(附解析).docx
- 9.3 力与运动的关系 -八年级物理下册课件(苏科版).pptx
- 2025届江苏省中考数学一模试卷(附解析).docx
- 2025年江苏省常熟市中考第一次适应性考试数学试卷(附解析).docx
文档评论(0)