第一天学习算法:选择排序:
实现思想:两层循环。第一层循环的时候索引是i,我们默认先定义一个最小值的索引,然后在第二次循环的时候,第二次循环的开始循环是第一次循环的 i索引加1,然后在第二次循环的内部进行判断和比较,默认索引的值和二次循环后面的值的大小,如果二次循环后面的值小于默认的值,我们就进行索引互换,并且数组位置进行交换。
public class SelectFunction {
public static void main(String[] args) {
int[] arr = {1,9,5,8,3,4,6,7,2,5,8,3,2};
selectAlgorithm(arr);
for (int i : arr) {
System.out.print(i+ "\t");
}
}
private static void selectAlgorithm(int[] arr){
for (int i = 0; i < arr.length; i++) {
for (int j = i+1; j < arr.length; j++) {
if (arr[i] > arr[j]){
swap(arr,i , j);
}
}
}
}
private static void swap(int[] arr,int a, int b){
int temp = arr[a];
arr[a] = arr[b];
arr[b] = temp;
}
}