数据结构------手写快排

下面的代码中的article只是我也的一个测试结构体, 可以换成任何数值, 理论上来说, 是通用的, 同学们可以自己用下面的代码, 封装一个属于自己的多态快排类void quickSort(article s[], int l, int r)
{
if (l < r)
{
int i = l, j = r;
double x = s[l].perPea

下面的代码中的article只是我也的一个测试结构体, 可以换成任何数值, 理论上来说, 是通用的, 同学们可以自己用下面的代码, 封装一个属于自己的多态快排类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void quickSort(article s[], int l, int r)
{
if (l < r)
{
int i = l, j = r;
double x = s[l].perPeace;
while (i < j)
{
while(i < j && s[j].perPeace <= x) // 从右向左找第一个小于x的数
j--;
if(i < j)
s[i++] = s[j];
while(i < j && s[i].perPeace > x) // 从左向右找第一个大于等于x的数
i++;
if(i < j)
s[j--] = s[i];
}
s[i].perPeace = x;
quickSort(s, l, i - 1);
quickSort(s, i + 1, r);
}
}
越来越多的平台(微信公众平台,新浪微博,简书,百度打赏等)支持打赏功能,付费阅读时代越来越近,特此增加了打赏功能,支持微信打赏和支付宝打赏。坚持原创技术分享,您的支持将鼓励我继续创作!