程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> qsort快速排序的實現

qsort快速排序的實現

編輯:關於C語言

#include <stdio.h>
int a[100];
void prt(int n)
{
    int i;
    for(i=1;i<=n;i++)
      printf( "%d ",a[i]);
}
void quicksort( int a[],int l,int h)
{
   int j ,i,key;
   if (l>=h) return ;
   i=l;j=h;key=a[i];
   while(i<j)
   {
        while(i<j&&a[j]>key)j--;
        if (i<j) a[i++]=a[j];
        while (i<j&&a[i]<key)i++;
        if (i<j) a[j--]=a[i];
   }
    a[i]=key;
    if (l<i-1)
        quicksort(a,l,i-1);
    if (i+1<h)
        quicksort(a,i+1,h);
}
int main()
{
    int i,n;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
      scanf( "%d",&a[i]);
    quicksort(a,0,n);
    prt(n);
    scanf("%d",&a[i]);
    return 0;
}


本文出自 “至簡” 博客,請務必保留此出處http://zhijian.blog.51cto.com/2057586/1269019

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved