965 B
965 B
title | localeTitle |
---|---|
Brute Force Algorithms | 蛮力算法 |
蛮力算法
暴力算法指的是一种编程风格,它不包括任何提高性能的快捷方式,而是依靠纯粹的计算能力来尝试所有可能性,直到找到问题的解决方案。
一个典型的例子是旅行商问题(TSP)。假设销售人员需要访问全国10个城市。如何确定访问城市的顺序,以使旅行的总距离最小化?蛮力解决方案只是计算每条可能路线的总距离,然后选择最短的路线。这不是特别有效,因为可以通过巧妙的算法消除许多可能的路线。
另一个例子:5位密码,在最坏的情况下,需要10 5次尝试才能破解。
蛮力的时间复杂度为O(n * m) 。因此,如果我们使用暴力搜索一串'm'字符中的'n'个字符串,那么我们需要尝试n * m次。