- 3
- 0
- 约1.83千字
- 约 2页
- 2023-03-30 发布于河南
- 举报
常用的算法思想
常用的算法思想
1.枚举算法〔穷举法〕:枚举算法就是指在算法中采用搜索的方法,把各种可能的情
况都考虑到,并对所得的结果逐一进行判断,过滤掉那些不符合要求的结果,保存那些符
合要求的结果.经常用循环结构来描述.
例1 等式□3 ×6528=3 □×8256 中方框内表示的是同一个数字,求所有满足等式的
数字,画出算法的程序框图.
解:算法的程序框图如下:
2.解析算法:就是指能够找出表示问题的前提条件和结果之间的关系的数学表达式
并通过表达式的计算来实现问题的求解.解析算法也是一种常用的算法,如果给出的问题能
够用数学公式来表示,那么一般可以用解析算法进行设计.
例2 正方形的周长为 a ,试设计求该正方形面积的算法,写出算法步骤.
a
算法分析:由于正方形的周长为 a ,所以正方形的边长等于 ,于是正方形的面积为
4
2 2
a a
S .这样得到了由正方形的周长求其面积的公式,可考虑用解析算法.
4 16
解:算法步骤如下:
S1:输入周长a ;
2
a
S2:计算S = ;
16
S3:输出面积S.
3.递推算法:递推算法是序列计算中的一种常用方法,它是按照一定的规律,计算序
列中的每一项,通常是通过计算前面的一些项来得到序列中某些特定的项.递推算法是一种
非常重要的算法,我们学习过的更相减损术求两个数的最大公约数、秦九韶算法计算多项
式的值等都是采用了递推算法的思想.
例3 用砖砌一堵墙,第一层用了全部砖的一半还多一块,第二层用了剩下的砖的一
半还多一块,以后每一层都用了剩余砖的一半还多一块,到第 20 层时恰好剩下 1 块砖,问
一共有多少块砖?试编写程序,解决这个问题.
算法分析:依题意知,砌第 20 层时剩余砖为 a20 1块,砌第 19 层时剩余砖为
精品资料文档
常用的算法思想
a19 (1 1) 2 4 块,砌第 18 层时剩余砖为 a18 (4 1) 2 10 块 …,砌第 n 层时剩
余砖为 an (an1 1) 2 块,所以递推公式为: a20 1, an 2(an1 1), n 1, 2, ,19 .
故此题可以用循环结构实现算法.
解:程序如下:
点评:此题是数列中典型的递推问题,它一般是给出数列中相邻几项的关系式以及数
列的开始几项,求数列中的其它项. 由于算法中的变量可以重复赋值,这样利用该递推公
式,再结合循环结构就可以解决这类问题.
精品资料文档
原创力文档

文档评论(0)