猴子排序(Bogosort)是一个很有趣也很容易理解的算法,算法的逻辑简单来说就是让一只猴子把写有数字的纸片随机排序,如果猴子排出来的是有序的数组,那么就结束该过程,否则将继续重复这一步骤,直到排出有序数组为止。
该算法的最优时间复杂度是O(n),平均时间复杂度是O(n*n!),最糟糕的情况下可能会无限执行下去。
目前没有在网上找到猴子排序法的java实现,因此就自己写了一下,博君一笑。
public class Bogosort {
public static void main(String[] args) {
int count = 0;
int[] arr = {
7,5,3,1,9,20,8