排序
选择排序
package com.it.sort;
import java.util.Arrays;
/**
* @Date 2019/8/8 10:59
* @Created by hfh
* @Description 选择排序:1:非优化
* 2:优化
*/
public class SelectSort {
public static void main(String[] args) {
//要排序的数组
int[] arr = {2, 6, 8, 45, 12, 3, 45, 14};
System.out.println("选择排序之前:" + Arrays.toString(arr));
//外层控制循环比较趟数
for (int i = 0; i < arr.length - 1; i++) {
//内层循环比较次数
for (int j = i+1; j <arr.length ; j++) {//从第二个元素开始比较 选择了第一个元素
if (arr[i]>arr[j]){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
/*//优化
for (int i = 0; i < arr.length-1; i++) {
//做标记 如果满足条件改变标记
int pos = i;
for (int j = i + 1; j < arr.length; j++) {
if (arr[pos] > arr[j]) { //这样条件不满足的就不用执行交换代码
pos = j;
}
}
if (pos != i){//如果判断条件满足 交换
int temp = arr[pos];
arr[pos] = arr[i];
arr[i] = temp;
}
}*/
System.out.println("选择排序后:" + Arrays.toString(arr));
}
}