基本原理: 每一次從待排序的記錄中選出最小的元素,順序放在已排好序的序列最後,直到全部記錄排序完畢,也就是:每一趟在n-i+1(i=1,2,....n-1))個記錄中選取關鍵字最小的記錄作為有序序列中第i個記錄。基於此思想的演算法主要有簡單選擇排序,樹形選擇排序,和堆排序。(這裡只介紹常用的簡單選擇排序)
public
static
void
main(string args) ;
system.
out.println("
交換之前:");
for(int
num:arr)
//選擇排序的優化
for(int i = 0; i < arr.length - 1; i++)
}//在內層迴圈結束,也就是找到本輪迴圈的最小的數以後,再進行交換
if(i != k)
}system.
out.println();
system.
out.println("
交換後:");
for(int
num:arr)
}
排序2 選擇排序 選擇排序 堆排序
選擇排序,依次找到資料集n n 1 n 2 中比它大 小的最大 最小者,最終達到全部資料有序。1 選擇排序 直接的依次找到資料集合n n 1 n 2.的最大 最小者形成排序,非常好理解。選擇排序可能是和氣泡排序一樣,最直觀能想到的排序方法。顯然選擇排序和氣泡排序一樣,無所謂最好 最壞 平均,選擇排序...
排序 2 選擇排序
工具方法類 package mydatastructrueadndalgorith.three.arrsort 陣列為模板排序演算法中的一些公用的模板方法 建立人 曹雪坤 version 1.0.0 public class example 遍歷陣列 public static void show ...
排序 選擇排序(2)
選擇排序 selection sort 是一種簡單直觀的排序演算法。它的工作原理是每一次從待排序的資料元素中選出最小 或最大 的乙個元素,存放在序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小 大 元素,然後放到已排序序列的末尾。以此類推,直到全部待排序的資料元素排完。選擇排序是不穩定的排序方...