算法设计基础.pptx
《算法设计基础.pptx》由会员分享,可在线阅读,更多相关《算法设计基础.pptx(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2.1 2.1 算法的描述算法的描述 2.1.1自然语言方式2.1.2伪代码方式2.1.3程序流程图方式2.1.4N/S盒图方式2.1.5PAD图方式算法的描述方式很多,不同描述风格适用于不同场合,在面向对象技术出现之前,人们倾向于在算法的描述中对未来程序的层次结构进行一定程度的控制,而不仅仅是描述具体的数据处理过程。本节介绍算法的常见描述方法。第1页/共24页2.1.12.1.1自然语言方式自然语言方式 例例2.1 2.1 算法描述示例,算法描述示例,1.1.11.1.1中排序算法的自然语言描述。中排序算法的自然语言描述。2.1.22.1.2伪代码方式伪代码方式预先规定了描述规则和关键词,以
2、接近某程序设计语言的风格描述算法。同时具有易理解和趋于形式化的优点。第2页/共24页2.1.32.1.3程序流程图方式程序流程图方式算法由若干张流程图描述,每张流程图由结点和有向边构成,该图描述了算法中所进行的操作以及这些操作执行的逻辑顺序。流程图的常用结点及控制结构描述如下:端点符处理判断预定义功能连接符条件处理1 1处理2 2选择结构循环结构或是条件否处理do-whiledo-while条件处理否是repeat-untilrepeat-until处理1 1处理2 2顺序结构第3页/共24页2.1.42.1.4N/SN/S盒图方式盒图方式开始开始读读n个数到数组个数到数组anfor i=1
3、to n-1 step 1k=ifor j=i+1 to n step 1 查找第查找第 i 个数据后面的最小元素个数据后面的最小元素aj ak否否是是 k=ji!=k否否是是交换两个元素交换两个元素x=aj aj=ak ak=x结束结束算法2.2的N/S盒图描述第4页/共24页2.1.52.1.5PADPAD图方式图方式PADPAD图结点与控制结构描述图结点与控制结构描述b b 选择结构d d 循环结构c c 多选择结构a a 顺序结构P P1 1P P2 2CP P1 1P P2 2P Pn n L L1 1L L2 2 X=X=L Ln nP PA A或while cwhile cunt
4、il cuntil cP P1 1P P2 2输入输出输入输出重复重复子算法子算法定义定义选择选择语句标号语句标号处理处理第5页/共24页2.1.52.1.5PADPAD图方式图方式算法算法2.22.2的的PADPAD图描述图描述i!=kkiki i1;i=n-1;ii+1xaj;aj ak;ak x j1;j=n;jj+1kjkjajakajakanan算法开始算法结束第6页/共24页2.22.2结构化算法设计初步结构化算法设计初步2.2.1 算法描述2.2.2 算法设计将组成算法的多个操作按照不同的层次组织在一起,每一组代表将组成算法的多个操作按照不同的层次组织在一起,每一组代表一种复杂的
5、一种复杂的相对独立的复合操作相对独立的复合操作,各复合操作的内部亦可进行层,各复合操作的内部亦可进行层次划分,从而形成整个算法的嵌套层次结构。次划分,从而形成整个算法的嵌套层次结构。每一组操作具有每一组操作具有惟一的入口和惟一的出口惟一的入口和惟一的出口,即一端进一端出。这,即一端进一端出。这样的操作组置于其他操作中时,算法的执行顺序必定是从前一组样的操作组置于其他操作中时,算法的执行顺序必定是从前一组操作的出口到本组操作的入口,经过本组内部的运算,到达本组操作的出口到本组操作的入口,经过本组内部的运算,到达本组操作的惟一出口。操作的惟一出口。各组之间利用各组之间利用顺序、选择和循环顺序、选择
6、和循环等三种控制结构在不同组之间进等三种控制结构在不同组之间进行连接,从而形成更高层次的算法结构。行连接,从而形成更高层次的算法结构。第7页/共24页2.2.12.2.1算法描述算法描述1.1.结构化算法的流程图结构化算法的流程图 结点与控制结构结点与控制结构功能结点功能结点判定结点(分支结点)判定结点(分支结点)连接结点连接结点顺序结构顺序结构分支结构分支结构循环结构循环结构第8页/共24页2.2.12.2.1算法描述算法描述1.1.结构化算法的流程图结构化算法的流程图 CBAc1blk5 c2truec4true blk3blk4 blk2 c3true blk1true.do if(c2
7、)则 if(c4)则 blk3 否则 blk4 否则 if(c3)则 blk1 否则 blk2 while(c1)blk5第9页/共24页2.2.12.2.1算法描述算法描述2.2.结构化算法的结构化算法的PADPAD图图.do if(c2)则 if(c4)则 blk3 否则 blk4 否则 if(c3)则 blk1 否则 blk2 while(c1)blk5c1c2c4blk3blk4c3blk1blk2blk5第10页/共24页2.2.22.2.2算法设计算法设计问题描述解题思路顺序(主体结构)过程细化顺序(主体结构)过程细化循环过程细化循环过程细化选择过程细化选择过程细化模糊的处理模糊的
8、处理模糊的处理模糊的处理模糊的处理模糊的处理模糊的处理条件模糊的处理模糊的功能循环条件模糊的处理第11页/共24页1.1.主体结构设计主体结构设计2.2.22.2.2算法设计算法设计问题处理核心模块善后处理模块初始化模块依次找出未排序部分中的最小数,通过交换,顺序地放入anan的开始部分读数据到anan算法的主体结构:算法的主体结构:算法开始标志块、初始化处理模块、问题处理核心模块、算法开始标志块、初始化处理模块、问题处理核心模块、善后处理模块、算法结束标志块。善后处理模块、算法结束标志块。算法主体结构算法主体结构算法算法2.22.2的调用结构的调用结构第12页/共24页2.2.顺序结构设计顺
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 算法 设计 基础
限制150内