|
ÂíÉÏ×¢²á£¬½á½»¸ü¶àºÃÓÑ£¬ÏíÓøü¶à¹¦ÄÜ^_^
ÄúÐèÒª µÇ¼ ²Å¿ÉÒÔÏÂÔØ»ò²é¿´£¬Ã»ÓÐÕ˺ţ¿Á¢¼´×¢²á
x
±¾Ìû×îºóÓÉ Ê®¶þÔµÄÏô°î ÓÚ 2020-3-30 13:13 ±à¼
ºÍ¼×Óã¸çÄǸö¿ìËÙÅÅÐòºÃÏñÓеãÇø±ð£¿£¿£¿
ÒªÇóÓõ½Èý¸öº¯Êý£º
void quicksort( int * const, int, int );
int partition( int * const, int, int );
void swap( int * const, int * const );
quicksortÊǵݹ麯Êý£¬µ÷ÓÃpartitionº¯Êý½øÐзÖÇø¡£
û̫Àí½âÓÃÈý¸öº¯ÊýÕâÑùÔõô×ö£¬Ð´ÁËÒ»°ë²»»áÁË£¬²»ÖªµÀ˼·¶Ô²»¶Ô¡£
Çó½â´ð¡£
ÎÒдµÄÈçÏ£º
#include<iostream>
using namespace std;
void quickSort(int* const, int, int);
int partition(int* const, int, int);
void swap(int&,int&);
void quickSort(int* const a, int left, int right)
{
if (left >= right)return;
int pivot = partition(a, left, right);
quickSort(a, left, pivot - 1);
quickSort(a, pivot + 1, right);
}
int partition(int* const a, int l, int r)//¶Ô´Óa[l]µ½a[r]µÄÊý×飬ÕÒµ½a[l]µÄλÖ㬲¢·µ»ØlµÄÖµ
{
while (l < r)
{
}
return l;
}
void swap(int &x,int &y)
{
int temp = x;
x = y;
y = temp;
}
int main()
{
int a[10] = { 6,5,8,9,10,1,4,3,2,7 };
void printarray(int[]);
cout << "Before:\n";
printarray(a);
quickSort(a, 0, 9);
cout << "\nAfter:\n";
printarray(a);
return 0;
}
void printarray(int a[])
{
for (int i = 0; i < 10; ++i)
{
cout.width(4);
cout << a[i];
}
} |
-
-
|