第3课 算法设计 课件(共10张PPT)

资源下载
  1. 二一教育资源

第3课 算法设计 课件(共10张PPT)

资源简介

(共10张PPT)
算法设计
探索:解决下列问题的步骤是怎样的
解析法
穷举法
枚举法
枚举法的思想是有序地尝试每一种可能的解,如果满足正确解的条件就采纳,否则继续枚举,做到不遗漏、不重复。
使用枚举法的关键是确定枚举的范围和正确解的判断条件。
想一想
为什么在登录网站、APP、ATM提款机时,系统要限制用户输入密码的尝试次数?
二、算法框架的确定
在算法思想的基础上,代入具体的计算模型,合理选择控制结构,可以得到解决具体问题的算法框架。如在枚举“鸡兔同笼”问题的解时,可以使用循环结构在 0~35 之间枚举“ji”“tu”,使用分支结构判断是否满足正确解条件:ji×2+tu×4=94。
兔的只数 0 1 …… 12 …… 35
鸡的只数 35-0 35-1 …… 35-12 …… 35-35
总脚数 70 72 …… 94 …… 140
是否满足条件 × × …… √ …… ×
算法的描述
描述算法时,要精准描述算法的每一步骤,明确算法的输入、输出。对于大部分算法来说,输人数据是必要的,但有的算法不需要输人数据或者算法本身给定了初始条件,如“鸡兔同笼”问题中将tu的值初始化赋为0。“鸡兔同笼”问题输出的结果是鸡与兔的只数,即变量ji和tu的值。最后根据设计好的算法框架,用流程图将算法完整地描述出来。“鸡兔同笼”问题的算法可描述如下:
试一试
除了枚举兔子的数量,你还有其他的枚举方法吗?
练一练
利用枚举法解决“百钱百鸡”问题,用自然语言或者流程图描述算法。
“百钱买百鸡”问题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,问翁、母、雏各几何?
计算建模
weng+mu+chu=100
weng*5+mu*3+chu/3=100
0≤weng≤20;
0≤mu≤33;
0≤chu≤300;
开始
weng=0
weng<21
结束
mu=0
mu<34
weng=weng+1



chu=100-weng-mu
mu=mu+1

输出weng,mu,chu

展开更多......

收起↑

资源预览