选择排序-java
算法描述:對(duì)于給定的一組記錄,經(jīng)過第一輪比較后得到最小的記錄,然后將該記錄與第一個(gè)記錄的位置進(jìn)行交換;
接著對(duì)不包括第一個(gè)記錄以外的其他記錄進(jìn)行第二輪比較,得到最小的記錄并與第二個(gè)記錄進(jìn)行位置交換;重復(fù)該過程,直到進(jìn)行比較的記錄只有一個(gè)時(shí)為止。
package?sorting; /** ?* 選擇排序 ?* 平均O(n^2),最好O(n^2),最壞O(n^2);空間復(fù)雜度O(1);不穩(wěn)定;簡(jiǎn)單 ?* @author zeng ?* ?*/ public?class?SelectionSort { ????public?static?void?selectionSort(int[] a) { ????????int?n = a.length; ????????for?(int?i =?0; i < n; i++) { ????????????int?k = i; ????????????// 找出最小值的小標(biāo) ????????????for?(int?j = i +?1; j < n; j++) { ????????????????if?(a[j] < a[k]) { ????????????????????k = j; ????????????????} ????????????} ????????????// 將最小值放到排序序列末尾 ????????????if?(k > i) { ????????????????int?tmp = a[i]; ????????????????a[i] = a[k]; ????????????????a[k] = tmp; ????????????} ????????} ????} ????public?static?void?main(String[] args) { ????????int[] b = {?49,?38,?65,?97,?76,?13,?27,?50?}; ????????selectionSort(b); ????????for?(int?i : b) ????????????System.out.print(i +?" "); ????} } 來自:https://www.cnblogs.com/zengzhihua/p/4456741.html 僅供學(xué)習(xí)
接著對(duì)不包括第一個(gè)記錄以外的其他記錄進(jìn)行第二輪比較,得到最小的記錄并與第二個(gè)記錄進(jìn)行位置交換;重復(fù)該過程,直到進(jìn)行比較的記錄只有一個(gè)時(shí)為止。
package?sorting; /** ?* 選擇排序 ?* 平均O(n^2),最好O(n^2),最壞O(n^2);空間復(fù)雜度O(1);不穩(wěn)定;簡(jiǎn)單 ?* @author zeng ?* ?*/ public?class?SelectionSort { ????public?static?void?selectionSort(int[] a) { ????????int?n = a.length; ????????for?(int?i =?0; i < n; i++) { ????????????int?k = i; ????????????// 找出最小值的小標(biāo) ????????????for?(int?j = i +?1; j < n; j++) { ????????????????if?(a[j] < a[k]) { ????????????????????k = j; ????????????????} ????????????} ????????????// 將最小值放到排序序列末尾 ????????????if?(k > i) { ????????????????int?tmp = a[i]; ????????????????a[i] = a[k]; ????????????????a[k] = tmp; ????????????} ????????} ????} ????public?static?void?main(String[] args) { ????????int[] b = {?49,?38,?65,?97,?76,?13,?27,?50?}; ????????selectionSort(b); ????????for?(int?i : b) ????????????System.out.print(i +?" "); ????} } 來自:https://www.cnblogs.com/zengzhihua/p/4456741.html 僅供學(xué)習(xí)
轉(zhuǎn)載于:https://www.cnblogs.com/altlb/p/8318060.html
總結(jié)
- 上一篇: 64位CentOs7源码安装mysql-
- 下一篇: BZOJ 2039: [2009国家集训