전처리문 :
[code cpp:nocontrols]
#define SWAP(x,y,t) {t=x;x=y;y=t;}
[/code]
#define SWAP(x,y,t) {t=x;x=y;y=t;}
[/code]
사용법 : QuickSort(정렬할 배열, 정렬 시작 위치, 정렬 끝 위치)
[code cpp:nocontrols]
void QuickSort(int iArray[], int iStart, int iEnd)
{
int i, j, pivot, temp;
if(iStart < iEnd) {
i = iStart;
j = iEnd+1;
pivot = iArray[iStart];
do {
do {
i++;
}while( iArray[i] < pivot );
do {
j--;
}while( iArray[j] > pivot );
if( i < j) {
SWAP( iArray[i], iArray[j], temp );
}
}while( i < j );
SWAP( iArray[iStart], iArray[j], temp );
QuickSort(iArray, iStart, j-1);
QuickSort(iArray, j+1, iEnd);
}
}
[/code]
void QuickSort(int iArray[], int iStart, int iEnd)
{
int i, j, pivot, temp;
if(iStart < iEnd) {
i = iStart;
j = iEnd+1;
pivot = iArray[iStart];
do {
do {
i++;
}while( iArray[i] < pivot );
do {
j--;
}while( iArray[j] > pivot );
if( i < j) {
SWAP( iArray[i], iArray[j], temp );
}
}while( i < j );
SWAP( iArray[iStart], iArray[j], temp );
QuickSort(iArray, iStart, j-1);
QuickSort(iArray, j+1, iEnd);
}
}
[/code]
'Development > Knowledgement' 카테고리의 다른 글
| [Algorithm] Prim Algorithm (0) | 2007/05/18 |
|---|---|
| [Algorithm] Kruscal Algorithm (0) | 2007/05/18 |
| [Algorithm] Quick Sort (0) | 2007/05/18 |
| [Algorithm] Merge Sort (0) | 2007/05/18 |
| Cry Engine 2 (0) | 2007/04/25 |
| Visual Studio 단축키 (0) | 2007/04/25 |
이올린에 북마크하기
이올린에 추천하기