希尔排序算法(Java语言)

来源:互联网 发布:java 登录验证码 编辑:程序博客网 时间:2024/05/14 01:21

希尔排序以插入排序为基础。

希尔排序的每一趟需要选择一个步长,并按照步长进行插入排序。


/** * 希尔排序算法 * @param v * @return */public int shellSort(T v[]) {int n = v.length;for (int gap = n / 2; gap > 0; gap = gap / 2) {for (int i = gap; i < n; i++) {T temp = v[i];int j = i - gap;for (; j > -1 && temp.compareTo(v[j]) < 0; j -= gap) {v[j + gap] = v[j];}v[j + gap] = temp;}}return 0;}


0 0
原创粉丝点击