八大排序分别是:
- 直接插入排序
- 希尔排序
- 简单选择排序
- 堆排序
- 冒泡排序
- 快速排序
- 归并排序
- 基数排序
归类:
1、插入排序的思想及实现
思想:
从数组的第二个位置开始,取到这个位置的数值,与其的左边数值进行比较,如果比左边大就进行位置置换,一直进行到左边的数值比取到的数值小就停止本次的比较。继续取下一个位置的数值,重复这个操作。
例子:int[] list = {2,5,1,9,3,6,8,7,4,0};
比如取到数值5,5比左边的2大,所以不进行位置置换;继续往下取,取到数值1,1比左边的数值5小,所以1和5进行位置置换,置换完后1又左边的2小,再与2进行为主置换。
public class InsertSorted {
public static void main(String[] args) {
int[] list = {2,5,6,9,3,1,8,7,4,0};
for (int i = 1; i < list.length; i++) {
for (int j = i; j > 0; j--) {
if (j-1 > -1 && list[j]<list[j-1]){
int middle = list[j - 1];
list[j-1] = list[j];
list[j] = middle;
}else {
break;
}
}
}
System.out.println(Arrays.toString(list));
}
}