一.选择排序思想:
依次比较,使用0角标对应的元素依次后面角标对应的元素进行对比,小的往前放,第一次比较完毕,最小值出现在最小索引处...依次这样比较.
二.视频讲解更直观易懂
舞动的排序算法 选择排序
三.代码实现
package SelectSort;
/**
* @author LiangHaiBo
* @version 1.0
* @date 2021.7.23 上午 8:45
*/
public class Array {
public static void main(String[] args) {
int[] arr = {12,98,54,109,87};
System.out.println("选择排序前");
printArray(arr);
System.out.println("选择排序后");
selectSort(arr);
printArray(arr);
}
public static void selectSort(int[] arr){
for(int x = 0;x< arr.length-1;x++){
for(int y =x +1; y<arr.length;y++ ){
if(arr[y] < arr[x]){
int temp = arr[x];
arr[x] = arr[y];
arr[y] = temp;
}
}
}
}
//数组进行遍历
public static void printArray(int[] arr){
System.out.print("{");
for (int i = 0; i <arr.length ; i++) {
if(i == arr.length-1 ){
System.out.println(arr[i]+"}");
}else{
System.out.print(arr[i]+", ");
}
}
}
}
四.核心代码段
for(int x = 0 ; x < arr.length-1; x ++){
for(int y = x + 1; y< arr.length ; y ++){
//判断
if(arr[y] < arr[x]){
int temp = arr[x] ;
arr[x] = arr[y] ;
arr[y] = temp ;
}
}
}