猴子排序真快 慢!都不是!
猴子排序最快:O(n)
猴子排序最慢:O(∞)
真沙雕!
上程序!
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
int a[100000],x,z[100000];
cin>>n;
for(int i=0;i<n;i++)
cin>>a[i];
while(1){
for(int i=0;i<n;i++)
z[i]=0;
bool b=true;
for(int j=1;j<n;j++)
if(a[j-1]>a[j])
b=false;
if(b) break;
x=rand()%n;
for(int i=0;i<n;i++){
while(z[x]!=0)
x=rand()%n;
z[x]=a[i];
}
for(int i=0;i<n;i++)
a[i]=z[i];
}
for(int i=0;i<n;i++) cout<<a[i]<<' ';
return 0;
}
够沙雕吧?忘了说,这是我第一篇文章哦!