c++暴力法

大家好,我是茶哥。

今天带大家了解一下暴力法的定义。

何为暴力法?

简介;

暴力枚举法是利用计算机运算速度快、精确度高的特点,对要解决问题的所有可能情况,一个不漏地进行检验,从中找出符合要求的答案,因此枚举法是通过牺牲时间来换取答案的全面性。

在数学和计算机科学理论中,一个集的枚举是列出某些有穷序列集的所有成员的程序,或者是一种特定类型对象的计数。这两种类型经常(但不总是)重叠。

特点;

将问题的所有可能的答案一一列举,然后根据条件判断此答案是否合适,合适就保留,不合适就丢弃。例如:找出1到100之间的素数,需要将1到100之间的所有整数进行判断。

枚举算法因为要列举问题的所有可能的答案,所以它具备以下几个特点:

1、得到的结果肯定是正确的;

2、可能做了很多的无用功,浪费了宝贵的时间,效率低下;

3、通常会涉及到求极值(如最大,最小,最重等);

4、数据量大的话,可能会造成时间崩溃。

基本思路;

枚举法的基本思想是: 逐一列举问题所涉及的所有情形,并根据问题提出的条件检验哪些是问题的解,哪些应予排除。采用枚举算法解题的基本思路:

(1)确定枚举对象、枚举范围和判定条件;

(2)枚举可能的解,验证是否是问题的解。

一本通暴力法例题;2028:【例4.14】百钱买百鸡

你可能感兴趣的:(c++,c语言,数据结构)