#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); }