七种排序算法Java版(5)

2021-01-20 23:04

七种排序算法Java版,最常用的7种

*/ private static void merge(int[] a, int low, int mid, int high) { int[] b = new int[high - low + 1]; int s = low; int t = mid + 1; int k = 0; while (s <= mid && t <= high) { if (a[s] <= a[t]) b[k++] = a[s++]; else b[k++] = a[t++]; } while (s <= mid) b[k++] = a[s++]; while (t <= high) b[k++] = a[t++]; for (int i = 0; i < b.length; i++) { a[low + i] = b[i]; } } /** * 希尔排序的一种实现方法 * * @param a */ public static void shellSort(int[] a) { int temp; for (int k = a.length / 2; k > 0; k /= 2) { for (int i = k; i < a.length; i++) { for (int j = i; j >= k; j -= k) { if (a[j - k] > a[j]) { temp = a[j - k]; a[j - k] = a[j]; a[j] = temp; } } } } } /** * 堆排序

,最坏时间复杂度O(nlog2n),平均性能接近于最坏性能。由于建初始堆所需的比较次数多,故堆不适合记录较少的比较 堆排序为原地不稳定排序


七种排序算法Java版(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:磁盘坏道工具PC3000使用方法详细图解

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: