⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 quicksort.c

📁 C语言实现的快速排序算法源程序
💻 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 + -