博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
枚举算法
阅读量:6981 次
发布时间:2019-06-27

本文共 664 字,大约阅读时间需要 2 分钟。

1.枚举法的基本思想

根据实际问题设计多重循环,一一枚举所有可能的状态,并用问题给定的约束条件检验哪些状态是需要的,哪些状态是不需要的。能使命题成立的状态,即为其解。虽然枚举法本质上属于搜索策略,但是它与后面讲的回溯法或宽度优先搜索有所不同。

2.枚举条件

①可预先确定每个状态的元素个数n。如百钱买百鸡问题,3文钱一只鸡的状态元素个数可预先确定;

②可预先确定每个状态元素a1,a2,…,an的值域。

3.框架结构

设a11为状态元素ai的最小值;aik为状态元素ai的最大值(1<=i<=n),即状态元素a1,a2,…an的值域分别为a11<=a1<=a1k, a21<=a2<=a2k,……ai1<=ai<=aik,…

    an1<=an<=ank。
   for(a1=a11;a1<=a1k;a1++)
      for(a2=a21;a2<=a2k;a2++)
         .....
        for(ai=ai1;ai<=aik;ai++)
             .....
            for(an=an1;an<=ank;an++)
                 if(状态(a1,...,ai...,an)满足检验条件)输出问题的解;

4.优缺点

枚举法的优点:由于枚举算法一般是现实问题的“直译”,且是建立在考察大量状态、甚至是穷举所有状态的基础之上的,因此比较直观,易于理解,其算法的正确性也比较容易证明。

枚举法的缺点:枚举算法的效率取决于枚举状态的数量以及单个状态枚举的代价,因此效率比较低。

转载于:https://www.cnblogs.com/tong1487/p/4006629.html

你可能感兴趣的文章
美国第一大移动运营商的5G战略:已进入预商用测试
查看>>
“物联网+云平台”的实验室管理方案,瞄准的是生物医药和化工行业
查看>>
OA系统选型分析之致远OA与华天动力OA
查看>>
联想确认再次裁员 称调整主要分布在海外
查看>>
大鱼吃光小鱼,绝不可能!盘点2016存储行业发生的大事件
查看>>
人中急救穴 也可通过辨别疾病
查看>>
2020年全球云服务规模将达3900亿美元
查看>>
Facebook、Netflix 等多家科技巨头谈“设计”
查看>>
雅虎核心业务售与Verizon:互联网先驱的时代终结
查看>>
市场规模占全国4成,广东物联网市场发展强劲
查看>>
ICS—CERT官网公示匡恩网络新发现四工控漏洞
查看>>
英国电价与光伏容量占比关系分析
查看>>
浅谈对5G核心网演进方向的几点展望
查看>>
明智地选择数据中心的五个注意事项
查看>>
开启物联网的真正潜力需要在更大程度上克服数据挑战
查看>>
张小龙公布微信小程序进展 可直接从桌面进入
查看>>
手机芯片三国杀:高通、联发科、展讯都想成霸主
查看>>
企业移动办公市场格局将定 随办如何突围?
查看>>
六大技巧提升员工信息安全意识
查看>>
保利协鑫多晶硅产量再创历史记录
查看>>