Closed. This question is off-topic。它当前不接受答案。












想改善这个问题吗? Update the question,所以它是用于堆栈溢出的on-topic

9年前关闭。



Improve this question



  • 暴力算法到底是什么? (仅是方法)
  • 什么时候有问题可以使用蛮力方法,什么时候不可以?
  • 当算法使用蛮力方法时,算法有什么特征?
  • 最佳答案

    1和3:蛮力意味着,您将遍历所有可能的解决方案。例如,在国际象棋游戏中,如果您知道可以分两步获胜,则蛮力将经历所有可能的步法组合,而无需考虑任何因素。因此,仍然会考虑不能影响结果的小卒子。

    2:考虑所有因素后,问题很快就会失去控制。由于组合爆炸(无法考虑太多情况),无法通过国际象棋进行15次 Action 来进行蛮力攻击。但是,考虑到“对问题的了解”的更聪明的算法可以走得更远(前进20-30步)

    编辑:澄清一下,蛮力是探索解决方案空间的最简单(最愚蠢的)方法。如果在countable空间中设置了问题(棋步是可数的,密码是可数的,连续的东西是不可数的),则蛮力将平等地考虑所有解决方案。在国际象棋示例中,您想与对手对战。这是通过一系列可移动的 Action 来完成的。蛮力将经历所有顺序的移动,但是可能不大可能。 “不可能”一词很重要,因为这意味着如果您对问题有所了解(您知道解决方案不大可能,例如牺牲皇后),那么您可以做得比蛮力强得多。

    关于algorithm - 蛮力算法到底是什么,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8103050/

    10-10 06:44