首页 > 代码库 > C++排序算法代码
C++排序算法代码
C++的快排算法代码
#include<iostream>
#include<algorithm>
#include<iomanip>
#include<time.h>
#define N 5000
usingnamespace std;
template<class T>
void qsort(T *l,T*r)
{ T *i,*j,*k;
int t;
i=l;j=r-1;k=i+rand()%(r-l);
t=*k;
while(i<j)
{
while(i<k&&*i<=t)
i++;
*k=*i;k=i;
while(k<j&&*j>=t)j--;
*k=*j;k=j;
}
*k=t;
if(k-l>1)qsort<T>(l,k);
if(r-k>1)qsort<T>(k,r);
}
void main()
{
srand(time(0));
int a[N];
for(int i=0;i<N;++i)
a[i]=rand()%(N*5);
qsort<int>(a,a+N-1);
/*for(i=0;i<N;++i) cout<<setw(5)<<a[i]; cout<<endl; */
for(i=1;i<N;++i)
if(a[i-1]>a[i])
{
cout<<false<<endl;return;
}
cout<<true<<endl;
格式有点乱了,希望对大家有帮助!
C++排序算法代码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。