擅长:python、mysql、java
<p>N皇后问题的回溯算法是最坏情况下的一种因子算法。所以对于N=8,8!在最坏的情况下检查解决方案的数量,N=9表示9!,等等。可以看到,可能的解决方案的数量增长得非常大,非常快。如果你不相信我的话,就去计算器前,从1开始,把连续的数字相乘。让我知道计算器的内存有多快用完。</p>
<p>幸运的是,并非所有可能的解决方案都必须检查。不幸的是,正确解的数目仍然遵循一个粗略的阶乘增长模式。因此,算法的运行时间以阶乘的速度增长。</p>
<p>因为你需要找到所有正确的解决方案,所以在加快程序的速度方面真的没什么可做的。你已经把搜索树上不可能的树枝修剪得很好了。我不认为还有什么会产生重大影响。这只是一个缓慢的算法。</p>