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] + " ");

}

}

}

相关推荐
=>>漫反射=>>5 分钟前
单元测试 vs Main方法调试:何时使用哪种方式?
java·spring boot·单元测试
初圣魔门首席弟子5 分钟前
c++ bug 记录(merge函数调用时错误地传入了vector对象而非迭代器。)
java·c++·bug
AresXue7 分钟前
你是否也在寻找二进制和字符串的高效转换算法?
算法
ZhengEnCi15 分钟前
@Parameter 注解技术解析-从 API 文档生成到接口描述清晰的 SpringBoot 利器
java·spring boot
Swift社区17 分钟前
从 0 到 1 构建一个完整的 AGUI 前端项目的流程在 ESP32 上运行
前端·算法·职场和发展
RTC老炮21 分钟前
webrtc弱网-BitrateEstimator类源码分析与算法原理
网络·人工智能·算法·机器学习·webrtc
AresXue23 分钟前
2025最新Java性能优化建议 应用 数据库 机器 网络
java
程序员烧烤24 分钟前
【leetcode刷题007】leetcode116、117
算法·leetcode
跟着珅聪学java33 分钟前
spring boot 整合 activiti 教程
android·java·spring
ghie90901 小时前
基于libsvm的支持向量机在MATLAB中的实现
算法·支持向量机·matlab