看板 java 關於我們 聯絡資訊
※ 引述《rosemary (迷迭香)》之銘言: : //對亂數排序,順便就把組順序調動, : for(int i=0;i<teamlength;i++) { : for(int j=teamlength-1;j>i;j--) { : if(temp[j]<temp[j-1]) { : tempd = temp[j-1]; : temp[j-1] = temp[j]; : temp[j] = tempd; : temps = team[j-1]; : team[j-1] = team[j]; : team[j] = temps; : } : } : } : return team; : } : : → rosemary:有個問題 有人知道這個叫做什麼排序法嗎 @@ 09/01 00:45 恕刪~ 你例子中所用的為Bubble Sort(氣泡排序) 可以把陣列想成一個直立的容器 容器頂端就是陣列的最左,底部就是陣列最右 陣列中所存放的值,愈小代表其重量愈輕 你例子中的做法是從容器最底部的值開始和上面的值做比較 要是下面的質比上面的值輕(小)的話 那就交換位置(浮上去) 這樣當例子中的第一重迴圈的第一圈跑完時 最輕的值一定會在最上面 第一重迴圈的第二圈跑完時 第二輕的值也就在最上面的第二個位置 依此類推 當迴圈跑完時 一定就會按小到大排好 這種排列方式當數值被排序過後,其前後順序也就不會再隨意的更改 所以是一種穩定的排列 但排列速度慢了點,為O(N^2) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.24.31
rosemary:謝謝gary大的詳細解釋..^^ 也謝謝各位網友提供的意見 09/02 18:53
freesamael:我個人認為氣泡排序是一個找不到優點的排序法... 09/03 21:20