📄 quicksort.c
字号:
# include<stdio.h>
#define ArrayLength 23
int midIndex=0;
void isplit(int p[],int first, int last)
{
int i,j,t,temp;
i=first+1;
j=last;
t=p[first];
midIndex = first;
while (i<=j)
{
while (p[j]>=t&&j>first) j--;
if(j==first) j=first+1;
while (p[i]<=t&&i<=last) i++;
if(i>last) i=last;
if (i<j)
{
temp=p[j];
p[j]=p[i];
p[i]=temp;
i++;
j--;
}
else i++;
}
if(p[first]>p[j])
{
p[first]=p[j];
p[j]=t;
midIndex=j;
}
return;
}
void iqck(int p[],int first, int last)
{
isplit(p,first,last);
if(first<midIndex-1)
iqck(p,first,midIndex-1);
if(midIndex+1<last)
iqck(p,midIndex+1,last);
return;
}
int main()
{
int i;
int p[ArrayLength]={11,7,8,3,2,3,45,6,4,2,45,56,6,7,11,12,6,2,78,334,56,6,7};
iqck(p,0,ArrayLength-1);
for (i=0; i<ArrayLength; i++)
{
printf("%d ",p[i]);
/*printf("\n"); */
}
printf("\n");
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -