MARIOV 2012年11月10日
关于分治排序
void quick_sort( int *a, int low, int high)
{
int i = low, j = high;
int temp = a[ low];
if( low >= high) return;
while( i != j)
{
while( i < j && a[ j] >= temp)
j--;
a[ i] = a[ j];
while( i < j && a[ i] <= temp)
i++;
a[ j] = a[ i];
}
a[ i] = temp;
quick_sort( a, low, i - 1); //递归
quick_sort( a, i + 1, high);
}

求这个代码的步骤详解,尤其是几个while循环。
看了两天了,越看越乱
google了,知道原理,就是不知道步骤。
...全文
141 点赞 收藏 11
写回复
11 条回复

还没有回复,快来抢沙发~

发动态
发帖子
C语言
创建于2007-09-28

3.2w+

社区成员

24.0w+

社区内容

C语言相关问题讨论
社区公告
暂无公告