資料結構與演算法之選擇排序

2021-10-07 14:47:52 字數 987 閱讀 2879

1. 什麼是選擇排序

我的理解:從左向右一次推舉中陣列中的最值,推舉的方式是:第一次選擇所有元素的最值放到陣列左邊第一位,第二次再從剩下的元素中選擇最值放到第二位,依此類推,直到排出陣列的順序為止

2. **,由小到大排序,陣列為:3,4,1,5,2

* 選擇排序

*/public class selectsort ;

selectsort(num);

system.out.println("排序後的結果: " + arrays.tostring(num));

}public static void selectsort(int num) else

if (num[j] < min)

}int temp = num[i - 1];

num[i - 1] = min;

num[mididx] = temp;

system.out.println("第" + i + "趟:" + arrays.tostring(num));}}

}// 測試結果

第1趟:[1, 4, 3, 5, 2]

第2趟:[1, 2, 3, 5, 4]

第3趟:[1, 2, 3, 5, 4]

第4趟:[1, 2, 3, 4, 5]

排序後的結果: [1, 2, 3, 4, 5]

3. 時間複雜度:o(n^2)

4. 和氣泡排序的區別:

上面的區別也是我上面****錯的原因

5. 選擇排序總結

> 如有理解不好的地方,希望各位大佬指教

資料結構 排序演算法之選擇排序

一 選擇排序 最差的排序演算法 在選擇排序中,假定我們需要公升序,因此在每次排序中,需要找到最大的元素,將其放在最後,在每一次的迴圈中,都是將最大的元素放在最後,因此對於資料較多的陣列,迴圈的次數將與陣列中元素的個數一致,因此,在對於這種陣列進行排序時,將十分的浪費時間。有關選擇排序的思路,如下所示...

資料結構與演算法 排序 選擇排序

資料結構與演算法 排序 選擇排序 sort selectsort include includevoid selectsort int list,int len if print list,len for selectsort int minkey int list,int i,int len if...

資料結構與演算法 選擇排序

選擇排序 從小到大 的基本思想是,首先,選出最小的數,放在第乙個位置 然後,選出第二小的數,放在第二個位置 以此類推,直到所有的數從小到大排序。在實現上,我們通常是先確定第i小的數所在的位置,然後,將其與第i個數進行交換。下面,以對 3 2 4 1 進行選擇排序說明排序過程,使用min index ...