快速排序,包括排序标签

来源:互联网 发布:java中replace函数的包 编辑:程序博客网 时间:2024/06/04 17:46
#include "stdafx.h"#include <iostream>using namespace std;void QuickSort(int* values,int* labels,const int lo,const int hi);int _tmain(int argc, _TCHAR* argv[]){   int lab[10]={7,6,5,4,10,9,8,2,1,3};int sor[10]={1,2,3,4,5,6,7,8,9,10};QuickSort(lab,sor,0,9);for(int i=0; i<10; i++) {cout<<lab[i]<<": "<<sor[i]<<endl;}return 0;}void QuickSort(int* values,int* labels,const int lo,const int hi){    int i=lo, j=hi;int v; int l;    int x = values[(lo+hi)/2];    do    {            while (values[i]<x) i++;         while (values[j]>x) j--;        if (i<=j)        {            v=values[i]; values[i]=values[j]; values[j]=v;l=labels[i]; labels[i]=labels[j]; labels[j]=l;            i++; j--;        }    } while (i<=j);    if (lo<j) QuickSort(values,labels,lo, j);    if (i<hi) QuickSort(values,labels,i, hi);}

原创粉丝点击