java实现希尔排序

public class ShellSort {

public static void sort(int[] arr) {

int n = arr.length;

int gap = n / 2;

while (gap > 0) {

for (int i = gap; i < n; i++) {

int temp = arr[i];

int j = i;

while (j >= gap && arr[j - gap] > temp) {

arr[j] = arr[j - gap];

j -= gap;

}

arr[j] = temp;

}

gap /= 2;

}

}

public static void main(String[] args) {

int[] arr = {8, 2, 7, 3, 1, 5, 6, 4};

sort(arr);

for (int i = 0; i < arr.length; i++) {

System.out.print(arr[i] + " ");

}

}

}

相关推荐
Li_yizYa2 分钟前
谈谈Java集合中的fail-fast和fail-safe
java·开发语言
糖葫芦君6 分钟前
TRPO-trust region policy optimization论文讲解
人工智能·算法·机器学习·强化学习
曹轲恒9 分钟前
SpringBoot配置文件(1)
java·spring boot·后端
a努力。11 分钟前
中国电网Java面试被问:RPC序列化的协议升级和向后兼容
java·开发语言·elasticsearch·面试·职场和发展·rpc·jenkins
毕设源码-钟学长14 分钟前
【开题答辩全过程】以 基于SSM框架的月子中心管理系统的设计与实现为例,包含答辩的问题和答案
java
码农水水18 分钟前
得物Java面试被问:大规模数据的分布式排序和聚合
java·开发语言·spring boot·分布式·面试·php·wpf
HaiLang_IT22 分钟前
基于RepVGG与注意力机制的手写潦草汉字识别算法研究
算法
Chan1623 分钟前
【 微服务SpringCloud | 模块拆分 】
java·数据结构·spring boot·微服务·云原生·架构·intellij-idea
一起努力啊~25 分钟前
算法刷题--字符串
算法
独断万古他化25 分钟前
【二分算法 深度解析】二段性思维与经典题型全通关
java·算法