归并排序
来源:互联网 发布:mac电脑怎么截长图 编辑:程序博客网 时间:2024/05/20 18:18
public void mergeSort(int[] array) { int n = array.length; for (int length = 1; length < n; length = 2 * length) mergePass(array, length, n); } public void mergePass(int[] array, int length, int n) { int i; for (i = 0; i + 2 * length - 1 < n; i = i + 2 * length) { merge(array, i, i + length - 1, i + 2 * length - 1); } if (i + length - 1 < n) merge(array, i, i + length - 1, n - 1); } public void merge(int[] array, int low, int mid, int high) { int i = low, j = mid + 1; int k = 0; int[] temps = new int[high - low + 1]; while (i <= mid && j <= high) { if (array[i] <= array[j]) { temps[k++] = array[i++]; } else { temps[k++] = array[j++]; } } while (i <= mid) { temps[k++] = array[i++]; } while (j <= high) { temps[k++] = array[j++]; } for (k = 0, i = low; i <= high; i++, k++) array[i] = temps[k]; }
阅读全文
0 0
- 归并排序-归并排序
- 归并和归并排序
- 归并与归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 排序::归并
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 归并排序
- 二分查找法
- [LeetCode] 231. Power of Two(判断整数是否是2的幂)
- LeetCode@HashTable_575_DistributeCandies
- 第三十四天:js总结+重写js的日历
- python字典
- 归并排序
- var, let, const,、 命令的理解和区别;
- django 1.11.X初学指南(1)
- CSS知识部分总结(不含CSS3)
- Linux进程间通信(2)--消息队列
- Android动画:解决通过View.getY()获取初始位置为0的问题
- 常用控件(3)
- 使用iframe的方式实现共用的头部和尾部页面
- SpannableString&SpannableStringBuilder一些简单介绍