Quick Sort C Code Implement

Quick Sort C Code Implement
void  QuickSort( int *  pData, int  left, int  right)
{
    
int  i  =  left, j  =  right;
    
int  middle  =  pData[(left + right) / 2 ];         //  midlle value
     int  iTemp;
    
do
    {    
        
while  (pData[i]  <  middle  &&  i  <  right)            i ++ ;
        
while  (pData[j]  >  middle  &&  j  >  left)            j -- ;
        
if  (i  <  j)                             //  swap
        {
            iTemp    
=  pData[i];
            pData[i] 
=  pData[j];
            pData[j] 
=  iTemp;
            i
++ ;            j -- ;
        } 
        
else   if  (i  ==  j)
        {
            i
++ ;            j -- ;
        }
    } 
while  (i  <  j);

    
if  (left   <  j)        QuickSort(pData,left,j);
    
if  (right  >  i)        QuickSort(pData,i,right);
}

没的说,理解不了就是背也得把这段代码背下来。

你可能感兴趣的:(Quick Sort C Code Implement)