qsort的速度? |
缺席
|
黑輪
中階會員 發表:135 回覆:188 積分:64 註冊:2004-01-29 發送簡訊給我 |
請問一下,qsort的排序速度跟排序的資料量有關系嗎?
我有160000*4筆的資料,程式跑了之後好像就不動了,是因為資料太多嗎?
void qsort(int a[],int b[],int c[],int d[], int m,int n) { int i,j,k,temp; if (m < n) { i = m; j = n 1; k = a[m]; do { do { i ; }while( (a[i] < k) && (i<=n)); do { j-- ; }while( (a[j] > k) &&(j>=1)); if (i < j) { temp = a[i]; a[i] = a[j]; a[j] = temp; temp = b[i]; b[i] = b[j]; b[j] = temp; temp = c[i]; c[i] = c[j]; c[j] = temp; temp = d[i]; d[i] = d[j]; d[j] = temp; } }while(i < j); temp = a[m]; a[m] = a[j]; a[j] = temp; temp = b[m]; b[m] = b[j]; b[j] = temp; temp = c[m]; c[m] = c[j]; c[j] = temp; temp = d[m]; d[m] = d[j]; d[j] = temp; if (m < j - 1) { qsort(a, b, c, d, m, j - 1); } if (j 1 < n) { qsort(a, b, c, d , j 1, n); } } }上面是我的qsort副程式,就是對a陣列排序,然後b、c、d陣列就跟著相同的順序排。 這樣會使速度變很慢嗎? |
markov
中階會員 發表:55 回覆:135 積分:53 註冊:2003-12-01 發送簡訊給我 |
|
黑輪
中階會員 發表:135 回覆:188 積分:64 註冊:2004-01-29 發送簡訊給我 |
|
markov
中階會員 發表:55 回覆:135 積分:53 註冊:2003-12-01 發送簡訊給我 |
|
黑輪
中階會員 發表:135 回覆:188 積分:64 註冊:2004-01-29 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |