- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法实例复习提纲
一、解析法
1.解析法概念:根据题目中给出的已知条件,找出已知条件与要求的结果之间的关系的数学表达式,并通过计算表达式来实现问题求解的方法。
2.解析法算法实例
(1)输入直角坐标系中两点坐标,计算两点间距离,并输出结果。
(2)输入圆半径,计算圆面积和周长,并输出结果。
(3)输入人民币金额,计算兑换后的美元金额并输出。(假定汇率为6.83)
二、枚举法
枚举算法的概念
列出各种可能的情况并逐一进行检验,根据检验的结果执行相应的操作。
“枚”就是一个一个;“举”就是列举。核心:不遗漏不重复。枚举算法充分利用了计算机“运行速度快、不知疲倦”的优势。
2.枚举算法的结构特点
列举——由循环结构实现
检验——由分支结构实现
因此,枚举算法的一般结构是:循环结构中嵌套分支结构。
3.枚举算法的设计步骤
确定列举的范围——不能随意扩大和缩小范围,否则会造成重复或漏解。
明确检验的条件——根据检验的对象来设定条件,以及检验后所执行的相关操作。
确定循环控制的方式和列举的方式——借助循环变量的变化来列举,或通过输入。
4.枚举算法实例
通过输入的数据作为检验的对象。
(1)输入10个数,分别统计正数和负数的个数
(2)输入5个成绩,统计其中100分的人数
这两个问题也采用了枚举算法的思想,从结构上看,都是循环结构嵌套分支结构。所检验的对象是通过键盘输入的数据。
通过循环变量的变化来作为检验的对象。
以下6个实例是不需要输入语句的,因为检验的对象正好包含循环变量的变化。
(1)打印出1-1000以内能同时被7和11整除的自然数。
(变量 n 表示这个自然数,列举范围从1—1000)
(2)找水仙花数:一个三位数,各个位置上的数字的立方和等于该数本身
(变量 n 表示这个三位数,列举范围从100—999)
(3)鸡兔同笼:20只头,56只脚,问鸡、兔各有几只?
(变量 x 表示鸡的个数,列举范围从1—20)
(4)涂抹单据:一张单据上的5位数号码,千位和百位数字已经模糊不清 “1XX47” ,但这个5位数是57或67的倍数。
(变量 x 表示这个两位数,列举范围从0—99)
(5)包装600个变形金刚,小盒每盒12个,大盒每盒15个。盒数都不能为0。输出所有可能的包装方案。
(变量 s 表示小盒子的数量,列举范围从1—50,不包括50)
(6)等式成立:34*8□56 = 43*65□8 使等式成立的数字是什么?
(变量 n表示这个数,列举的范围从0—9)
三、数组
数组是一种特殊的变量,它在内存中的位置是连续的,利用数组中各个元素下标的连续性的特点,可以采用循环结构对各个元素进行赋值或运算。
【实例】数组的输入与逆序输出
四、查找
1、顺序查找:按照数组元素的先后次序,从第一个元素开始进行遍历,逐个检验是否和关键字相等,找到了即退出。
2、对分查找:先取数组中间的元素和关键字比较,若不相等则缩小近一半的查找范围,在剩下的元素中继续查找。
由于对分查找每查找一次,查找范围就缩小一半,因此对分查找的效率要远高于顺序查找,但它的前提是:待查找的数据必须是有序的。
五、排序
1、冒泡排序:
从最下面一个元素起,自下而上地比较相邻两个元素中的数据,将较小的数值交换到上面一个元素。重复这一过程,直到处理完最后两个元素中的数据,称为一遍加工。此时,最小的数据已经上升到第一个元素的位置。
然后对余下的i-1个元素重复上述过程。
由于每一遍加工都是将最小的元素像气泡一样浮至顶端,故称为冒泡排序。
例如:有4个数据:18,15,2,9,按照从小到大的顺序排列,过程如下:
原始数据 18 15 2 9 第一遍 2 18 15 9 第二遍 2 9 18 15 第三遍 2 9 15 18
2、选择排序
从第一个元素起,自上而下找出最小数,并记录下它的位置,将最小数交换到第一个元素中。完成第一遍加工。
然后对余下的i-1个元素重复上述过程。
在每一遍加工中,只需交换一次位置即可
例如:有4个数据:18,15,2,9,按照从小到大的顺序排列,过程如下:
原始数据 18 15 2 9 第一遍 2 15 18 9 第二遍 2 9 18 15 第三遍 2 9 15 18
选择排序实际上是一种优化了的排序方法,它和冒泡排序的区别在于减少了交换的次数,在每一遍的加工过程中,选择排序采用的方法是通过遍历,记录下最值的位置,最后再将最值所在位置的数据与待排元素所在的位置进行交换,因此每一遍加工只需交换依次位置。大大减少了算法的复杂度。
六、擂台法
【实例】已知数组d中已经存放了10个数,输出其中的最大值。
采用“擂台法”,用变量k跟踪当前的最大值,思路如下:
先假设d(1)中的数据是当前的最大值,即k=d
您可能关注的文档
最近下载
- 2025年江苏省盐城市中考政治试题及答案.docx VIP
- 2025苏教版三上数学《曹冲称象的故事》测试卷及答案.pdf
- 【安全生产】-应急管理培训课件-生产安全事故应急预案及其演练全流程讲解(100页经典版课件).pptx VIP
- 2022年4月四级烟草专卖管理师理论知识试卷.pdf VIP
- 2025年中国四氯化锆项目投资计划书.docx
- 6.3.2 二项式系数的性质 课件(共19张PPT).pptx VIP
- 博物馆陈列展览大纲.doc VIP
- 风机基础土方开挖及回填方案.docx VIP
- 民用建筑设计统一标准 GB 50352-2019.pdf VIP
- TB10007-2006 铁路信号设计规范.docx VIP
文档评论(0)