您的位置:首页 > 理论基础 > 数据结构算法

SDUT3398数据结构实验之排序一:一趟快排

2016-07-30 15:03 246 查看
#include<bits/stdc++.h>
using namespace std;
void onceqsort(int a[],int left,int right)
{
int mid=a[left],i=left,j=right;
if(left>=right)
return;
while(i<j)
{
while(i<j&&a[j]>=mid)j--;
a[i]=a[j];
while(i<j&&a[i]<=mid)i++;
a[j]=a[i];
}
a[i]=mid;
}
int main()
{
int n;
while(~scanf("%d",&n))
{
int a[10050];
for(int i=0; i<n; i++)
scanf("%d",&a[i]);
onceqsort(a,0,n-1);
for(int i=0; i<n; i++)
if(i!=n-1)
printf("%d ",a[i]);
else
printf("%d\n",a[i]);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: