QuickSort

来源:互联网 发布:到淘宝买还是到琴行 编辑:程序博客网 时间:2024/05/22 08:21
0001 void QuickSort(int data[], int startIdx, int dataCount)0002 {0003     int key = data[startIdx];0004     int left = startIdx;0005     int right = dataCount - 1;0006     static int idx = 1;0007     int i;0008 0009     /* 已排序 */0010     if (left >= right) return;0011 0012     while(left <<> right)0013     {0014         while((left <<> right) && (data[right] >= key)) right--; 0015         data[left] = data[right];0016         while((left <<> right) && (data[left] <<>= key)) left++;0017         data[right] = data[left];0018     }0019     data[right] = key;0020     printf("/n%02d[%03d]:/n", idx ++, key);0021     for (i = 0;i <<> DATA_SIZE; i++)0022     {0023         if (i != 0 && i % 16 == 0)0024         {0025             printf("/n");0026         }0027         printf("%02X ", data[i]);0028     }0029     /* 左边 */0030     QuickSort(data, startIdx, right);0031     /* 右边 */0032     QuickSort(data, right+1, dataCount);0033 }
原创粉丝点击