穷举
目录
穷举的基本思想
- 穷举法(Exhaustion),也成枚举法(Enumeration)
- 列举所有可能,逐一试探
- 基本思想
- 根据问题的==部分==已知条件预估解的范围
- 在此范围内对所有可能的情况进行逐一验证
- 若某个情况符合题目的全部条件,则该情况为本问题的一个解
- 若全部情况的验证结果均不符合题目的全部条件,则说明该题无解
- 直到找到满足已知条件的解为止
穷举法求解问题的两个基本要素
-
影响算法的时间复杂度
- 影响算法的时间复杂度
- 循环结构实现
-
确定判断条件
- 复合什么条件才能成为问题的答案
- 分支结构实现
穷举法的实际应用
- 常用语密码破译
- 将所有可能的密码逐个尝试,知道找出真正的密码为止
- 也称蛮力法(Brute Force),或暴力搜索法
- 理论上利用这种方法可破解任何一种密码,问题在于如何缩短试误时间
穷举法的特点
- 优点
- 优点:算法简单,逻辑清晰,易于理解,程序易于实现
- 缺点
- 预算量较大
- 只适合于“有几种组合”、“是否存在”、求解不定方程等类型的问题求解