package 排序.选择排序;
public class SelectTionSort {
/**
* 先想边界条件
* @param arr
*/
public static void selectSort(int[] arr){
if (arr==null || arr.length <2){
return;
}
int N = arr.length;
// 0~n-1
// 1~n-1
// 2~n-1
for (int i = 0; i < N; i++) {
int minValueIndex = i;
for (int j = i+1; j <N; j++) {
minValueIndex = arr[j] < arr[minValueIndex] ? j: minValueIndex;
}
change(arr,i,minValueIndex);
}
}
public static void change(int[] arr,int i,int j){
int tmp = arr[j];
arr[j] = arr[i];
arr[i] = tmp;
}
public static void printArray(int[] arr){
for (int i = 0; i <arr.length; i++) {
System.out.print(arr[i]+" ");
}
}
public static void main(String[] args) {
int arr[] = {7,1,3,5,1,6,8,1,3,5,7,5,6};
System.out.println("排序前");
printArray(arr);
selectSort(arr);
System.out.println("\n");
System.out.println("排序后");
printArray(arr);
}
}
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/justleavel/article/details/124836729
内容来源于网络,如有侵权,请联系作者删除!