- 16
- 0
- 约3.14万字
- 约 45页
- 2016-12-14 发布于北京
- 举报
程序设计的常用算法
目录
一、常用策略1、枚举策略2、归纳策略3、分治策略
4、最优策略
二、递归算法
三、搜索算法1、深度优先搜索2、广度优先搜索
四、其它数学方法的应用
五、动态规划
六、综合训练题
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
第一部分 常用策略
(一)枚举策略
1、算法思想
枚举策略又叫列举法,算法思想是:根据问题中的条件(约束条件)将可能的解列举出来,然后一一验证是否符合题目要求,从而找到问题的解。应用枚举策略解题的关键是:根据问题的条件确定解的范围,和对可能的解进行验证。
2、应用举例
例1_1: 找水仙花数
一个三位数各位数字的立方和等于它本身,这样的三位数称为水仙花数。请编程找出所有的水仙花数。
分析:根据水仙花数的定义可知,水仙花数一定是三位数,因此,可能的范围是100至999的所有数,将这些数一一列举进行验证,从而找出所有的水仙花数。程序如下:
program Liti1_1;
var a,b,c,d: integer;
begin
for a:=100 to 999 dobeginb:=a mod 10;c:=(a div 10) mod 10;d:=a div 100;if (a=b*b*b+c*c*c+d*d*d) then
原创力文档

文档评论(0)