精華區beta ZooStudy 關於我們 聯絡資訊
這裡下半部是partition的部分 我的方法蠻繁雜的 小球的好像比較簡單 不過這個確定可以用就是了 然後quicksort的recursive call: int quicksort( int b[], int low, int high ){ int p = partition( b, low, high ); if ( p == low || p == high ) return 0; quicksort( b, low, p - 1 ); quicksort( b, p + 1, high); } 可是發現有時候會怪怪的 我也不知道為什麼 ------- int partition( int a[], int low, int high ) { int hold; int p = low; for ( int i = 0; i != -2; i = 0 ){ for ( int r = high; r != -1 && r != -2; r-- ){ if ( a[ p ] > a[ r ] ){ hold = a[ p ]; a[ p ] = a[ r ]; a[ r ] = hold; p = r; r = -1; break; } if ( p == r ){ r = -2; break; } } for ( int l = low; l != -1 && l != -2; l++ ){ if ( a[ p ] < a[ l ] ){ hold = a[ p ]; a[ p ] = a[ l ]; a[ l ] = hold; p = l; l = -1; break; } if ( p == l ){ l = -2; break; } } if ( r == -2 && l == -2 ){ i = -2; break; } } return p; } -- 如果社會的反思和科學的猛進      於斯交會 那麼也許 哪一股是感性 邏輯的推移和藝術的旋律 縱彼此反向平行     亦在此纏綿 卻也緊握著 哪一股是理性啊 億萬條氫鍵 -- ※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw) ◆ From: 140.112.239.144 ※ 編輯: guyspy 來自: 140.112.239.144 (12/03 23:14) ※ 編輯: guyspy 來自: 140.112.239.144 (12/03 23:31) ※ 編輯: guyspy 來自: 140.112.239.144 (12/03 23:32)