快速排序

来源:互联网 发布:c编程视频教程 编辑:程序博客网 时间:2024/05/21 22:31
重新看看算法导论,写写代码练练手。
#include <iostream>using namespace std;#define item 6int exchange(int A[],int i,int j){    int temp = A[i];    A[i] = A[j];    A[j] = temp;    return 0;}int Partion(int A[],int l,int r){    int x= A[r];    int i = l-1;    for (int j = l; j < r; j++)    {        if(A[j] <= x)        {            i=i+1;            exchange(A,i,j);        }    }    exchange(A,i+1,r);    return i+1;}void q_sort(int A[],int l,int r){    if (l<r)    {        int q = Partion(A, l ,r);        q_sort(A,l,q-1);        q_sort(A,q+1,r);    }}int main(){    int i, a[item];    cout << "Please input six numbers" << endl;    for(i=0; i<item; i++)        cin >> a[i];    q_sort(a, 0, item-1);    cout << "The ordered array is";    for(i=0; i<item; i++)        cout << a[i] << " ";}

0 0