算法:选择排序
FLowUs邀请链接:https://flowus.cn/login?code=AXNU63
FlowUs邀请码:AXNU63
- 循环待排序序列,
for(i=0; i<N; i++)
- 从第i个到第N-1个元素中找到最小的,并将其位置存下来
- 将未排序部分的最小的换到有序部分的最后位置
public class SelectSort {
public static void main(String[] args) {
int [] arr = {49,38,65,97,76,13,27,49};
selectSort(arr,arr.length);
}
public static void selectSort(int [] arr,int n){
for (int i = 0; i < n - 1; i++) {
int index = i;
int j;
// 找出最小值得元素下标
for (j = i + 1; j < n; j++) {
if (arr[j] < arr[index]) {
index = j;
}
}
int tmp = arr[index];
arr[index] = arr[i];
arr[i] = tmp;
System.out.println(Arrays.toString(arr));
}
}
}