交换类排序
1.冒泡排序(n*n)
第一轮交换的区间 0~N-1,最大数放到第N-1位置
.1第一个数与第二数比较,谁大放后面,
.2.然后第二个数与第三个数比较,谁大放后面
.3.依次交换,最大的数放到数组最后面
第二轮交换区间0~N-2,最大数放大第N-2位置
…
最后一轮 确定第1位和第2位值
选择类排序
1.直接选择排序(n*n)
第一轮选择区间0~N-1,选择出最小的值,放到位置0
第二轮选择区间1~N-1, 选择出最小的值,放到位置1
…
最后一轮区间N-2~N-1,最小的数(数组中最大的)放到位置N-1
归并类排序
1.归并排序(n*logN)
第一步,让数组中每一个数独立成为一个区间
第二步,相邻长度为一的区间进行合并,形成长度为2的有序序列
…
最后一步,将相邻长度n/2 的两个区间进行合并,形成长度为n的有序序列。
插入类排序
1.直接插入类排序(n*n)
第一次插入区间0~0,如果比0位置上元素小,放入到0位置。
第二次插入区间0-1,从1~0开始比较,直到找出小于位置2元素所在位置,插入到其后面.
…
最后一次插入区间0-N-2,从N-2~-0开始比较,直到找出小于位置N-1元素所在位置,插入到其后面。