希尔排序
Posted agzno1hb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了希尔排序相关的知识,希望对你有一定的参考价值。
public class ShellSort { public void shellSort(int[] array, int n) { int i, j, gap; int temp; for (gap = n / 2; gap > 0; gap /= 2) {// 计算gap大小 for (i = gap; i < n; i++) {// 将数据进行分组 for (j = i - gap; j >= 0 && array[j] > array[j + gap]; j -= gap) {// 对每组数据进行插入排序 temp = array[j]; array[j] = array[j + gap]; array[j + gap] = temp; } // 打印每趟排序结果 for (int m = 0; m <= array.length - 1; m++) { System.out.print(array[m] + "\t"); } System.out.println(); } } } public static void main(String[] args) { ShellSort shellSort = new ShellSort(); int[] array = { 5, 69, 12, 3, 56, 789, 2, 5648, 23 }; shellSort.shellSort(array, array.length);// 注意为数组的个数 for (int m = 0; m <= array.length - 1; m++) { System.out.print(array[m] + "\t"); } } }
以上是关于希尔排序的主要内容,如果未能解决你的问题,请参考以下文章