蛮力法
一、什么是蛮力法
蛮力法,又称枚举法,是基础的算法之一。这是一种算法思想,顾名思义,就是将问题的可能结果全部都列举出来,再根据列举的结果根据问题的约束条件选择出问题的解。
所依赖的技术最主要的是遍历,重复步骤。往往用这种算法去求解问题,时间复杂度会很大。但是确是最简单,直白容易想到的解法。
思想还是得用实例来体现的,不然会感觉这个思想的东西只是思想,我们不会用的话,感觉这些思想没什么用,所以要用起来。选择排序是蛮力法的一个例子,我们应该抓住的是如何将这种思想应用起来,这才是关键。
二、例子——选择排序
1.问题
选择排序方法对一个序列进行升序排序
2.基本思想
听到选择排序,顾名思义,这是一种有选择的排序方法。怎么选择,如何体现蛮力?
选择,就是将序列分为有序跟无序,这两部分,刚开始,有序部分的元素肯定为空集。接下来,就是所谓的蛮力的部分,开始不管三七二十一,就在无序的部分开始找啊,找到在无序中最小的数,将把最小的数与无序序列的第一个元素交换。到这一步后,又开始划有序与无序部分,这个时候,要把刚才找的最小的数放到有序部分中。这时,有序部分的元素就加1了,所谓排好一个了,还有剩下的元素在无序序列中。再开始蛮力部分。一直这样更新有序无序序列&