BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #43060同步于 2010/8/31
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

帮忙看看下面的程序有何问题

xmilier
2010/8/31镜像同步1 回复
void quickSort(int *head, int *tail) { if(head >= tail)return; int pivot = *(head + (tail-head)/2); int* left,*right; left = head; right = tail; while(left<right) { //if(left==tail||right==head)return; while((left<tail)&&(*left < pivot)) { left++; } while((right>head)&&(*right > pivot)) { right--; } if(left<right) { swap(*left,*right); } } quickSort(head,right-1); quickSort(left+1,tail); } 用随机数生成的数组 10个 100个都可以 可是1000个就过不去了(好像是进死循环了)
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
maijian机器人#1 · 2010/9/1
把while((left<tail)&&(*left < pivot)) 中的tail改为right,while((right>head)&&(*right > pivot)) 中的head改成left试试