枚举思想

枚举(Enumerate )

  • 枚举就是尝试每一种可能的情况,直到找到一个合法的解。
  • 一些问题看似很复杂,但当数据量不大的时候,用枚举往往能解决。
  • 枚举的关键在于准确描述解的特征和解空间的结构,然后遍历整个解空间寻找合法解。

枚举的要点

枚举思想_第1张图片

 

 

枚举的一般步骤

  1. 确定枚举范围,选取合适的枚举方式,不能遗漏任何一个真正解,同时要避免重复;
  2. 看是否存在优化可能,将可能成为解的答案范围尽可能的缩小,以便提高解决问题的效率;
  3. 根据问题找到合理、准确、好描述并且好编码的验证条件;
  4. 枚举并判断当前的解是否符合验证条件,并保存符合条件的解;
  5. 按要求输出枚举过程中留下的符合条件的解。

 小结

枚举法的优点

  • 思路简单,程序编写和调试方便。

枚举法的缺点

  • 运算量比较大,效率不高;
  • 如果枚举范围太大,在时间上可能会超时;需要设法优化。

你可能感兴趣的:(数据结构,算法)