概述
枚举算法的基本思想
● 枚举算法是我们在日常中使用到的最多的一个算法,它的核心思想就是:枚举所有的可能(穷举)。
● 枚举法的本质就是从所有候选答案中去搜索正确的解,使用该算法需要满足两个条件:(1)可预先确定候选答案的数量;(2)候选答案的范围在求解之前必须有一个确定的集合。
● 枚举结构:循环+判断语句。
枚举算法的优缺点
● 优点:算法简单,在局部地方使用枚举法,效果十分的好。
● 缺点:运算量过大,当问题的规模变大的时候,循环的阶数越大,执行速度越慢。
枚举算法实例
百钱白鸡:
中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱白鸡问题”:一只公鸡值五钱,一只母鸡值三钱,三只小鸡值一钱,现在要用百钱买百鸡,请问公鸡、母鸡、小鸡各多少只?
案例分析:
如果用一百钱买一种鸡,那么,公鸡最多20只,母鸡最多33只,小鸡最多300只。但是题目要求买100只,所以公鸡的数量在0到20之间,母鸡的数量在0到33之间,小鸡的数量在0到100之间。我们把公鸡、母鸡、小鸡的数量分贝设为cock、hen、chicken,通过上述分析可知:
(1)0<=cock<=20
(2)0<=hen<=33
(3)0<=chicken<=100
(4)cock+hen+chicken==100
(5)cock*5+hen*3+chicken/3.0==100
#include <bits/stdc++.h>
using namespace std;
int main(){
int cock,hen,chicken;
for(cock=0;cock<=20;cock++){
for(hen=0;hen<=33;hen++){
chicken=100-cock-hen;
if(cock*5+hen*3+chicken/3.0==100){
cout<<"cock="<<cock<<"
hen="<<hen<<"
chicken="<<chicken<<endl;
}
}
}
return 0;
}
最后
以上就是不安黑裤为你收集整理的1、枚举算法枚举算法的基本思想枚举算法实例的全部内容,希望文章能够帮你解决1、枚举算法枚举算法的基本思想枚举算法实例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复