死磕数据结构与算法(排序)--简单选择排序。才疏学浅,如有错误,及时指正
八大排序算法
1. 冒泡排序算法
2. 选择排序算法
3. 插入排序冒泡算法
4. 希尔排序冒泡算法
5. 快速插入冒泡算法
6. 归并排序冒泡算法
7. 技术排序冒泡算法
8. 堆排序算法
选择排序
1. 思路
选择排序:选择排序是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法
2. 图解过程
3. 代码
package sort;
import java.util.Arrays;
public class SelectionSort {
public static void main(String[] args) {
int[] arr = {3,5,8,10,-10,15,80,-100};
selectSort( arr );
System.out.println( Arrays.toString(arr));
}
public static void selectSort(int[] arr){
for (int i = 0; i < arr.length - 1; i++) {
int min = arr[i];
int minIndex = i;
for (int j = i+1; j < arr.length; j++) {
if(arr[j] < min){
min = arr[j];
minIndex = j;
}
}
if(minIndex != i){
arr[minIndex] = arr[i];
arr[i] = min;
}
}
}
}