티스토리 뷰

Development & Tips/Algorithms

Quick Sort

HLDEC 2007.05.18 19:07

전처리문 :

[code cpp:nocontrols]
#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]

'Development & Tips > Algorithms' 카테고리의 다른 글

3-Standard Quick Sort  (0) 2007.05.22
Prim Algorithm  (0) 2007.05.18
Kruscal Algorithm  (0) 2007.05.18
Quick Sort  (0) 2007.05.18
Merge Sort  (0) 2007.05.18
댓글
댓글쓰기 폼