banner
NEWS LETTER

AcWing01

Scroll down

AcWing课后习题

快速排序

题目

image-20240711153254437

代码

cpp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include<iostream>
#include<algorithm>

using namespace std;

const int N = 1e9+10;
int num [N],n;

void quick_sort(int l,int r){
if(l >= r) return;
int i = l - 1,j = r + 1,x = q[l + r >> 1];
while(i<j)
{
do i++ ;while (q[i] < x);
do j-- ;while (q[j] > x);
if(i<j) swap(q[i],q[j]);
}
quick_sort(l,j);
quick_sort(j+1,r);
}
int main(){
cin >> n;
for(int i = 0 ;i< n ;i++) scanf("%d",&num[i]);
quick_sort(0,n-1);
for(int i = 0; i < n; i ++) cout << q[i] << ' ';
return 0;
}
Other Articles