排序
理想二旬
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
堆排序
堆排序从简单排序算法基础上改进得到,也是一趟一趟从无序区中选择最小的记录放到有序区中。 大根堆:每个结点都不小于其孩子结点 小更对:每个结点都不大于其孩子结点堆排序算法思想:先将array[0..n-1]调整为堆,array[0]为最大记录,然后交换array[0]和array[n-1],将最大记录归位。然后再将array[0..n-2]调整为堆,继续交换array[0]和array[n-2]…原创 2017-06-06 22:34:18 · 223 阅读 · 0 评论 -
简单选择排序
简单选择排序基本思想:不断从待排序记录中选出最小的记录,按顺序放在已经排好序的记录后米娜,直到全部排完为止。简单选择排序每趟产生的有序区一定是全局有序区。public void selectSort(int[] array) { int n = array.length; for (int i = 0; i < n - 1; i++) { int原创 2017-06-06 22:43:03 · 448 阅读 · 0 评论 -
冒泡排序
冒泡排序是一种典型的交换排序方式。基本思想是: 无序区中相邻两个记录比较和位置交换,使得最小记录如气泡一样逐渐往上浮 冒泡排序每趟产生的有序区一定是全局有序区。冒泡排序算法:public void bubbleSort(int[] array) { int n = array.length; for (int i = 0; i < n - 1; i++) {原创 2017-06-06 23:20:12 · 345 阅读 · 0 评论 -
直接插入排序
直接插入排序思想:不断将无序区中的记录插入到有序区中。public void insertSort(int[] array) { int length = array.length; for (int i = 1; i < length; i++) { if (array[i] < array[i - 1]) {原创 2017-06-06 23:24:50 · 236 阅读 · 0 评论 -
直接插入排序
直接插入排序思想:不断将无序区中的记录插入到有序区中。public void insertSort(int[] array) { int length = array.length; for (int i = 1; i < length; i++) { if (array[i] < array[i - 1]) {原创 2017-06-06 23:25:04 · 204 阅读 · 0 评论 -
折半插入排序
折半插入排序算法与直接插入排序类似,只是采用折半的方式查找记录要插入的位置。 折半插入排序算法: public void binaryInsertSort(int[] array) { int length = array.length; for (int i = 1; i < length; i++) { if (array[i] < arr原创 2017-06-06 23:27:56 · 466 阅读 · 0 评论 -
归并排序
public void mergeSort(int[] array) { int n = array.length; for (int length = 1; length < n; length = 2 * length) mergePass(array, length, n); } public void mergeP原创 2017-06-09 23:39:56 · 252 阅读 · 0 评论
分享