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

}

}

}

相关推荐
潲爺1 分钟前
Java-多线程
java·笔记·学习
李慕婉学姐4 分钟前
【开题答辩过程】以《婴幼儿辅食健康监测与反馈系统》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·spring boot
中國龍在廣州4 分钟前
生成不遗忘,「超长时序」世界模型,北大EgoLCD长短时记忆加持
人工智能·深度学习·算法·自然语言处理·chatgpt
派大鑫wink5 分钟前
Stream 流:简化集合操作的利器
java·开发语言
亓才孓9 分钟前
java中的Math.Radom拓展
开发语言·python·算法
lkbhua莱克瓦249 分钟前
基础-SQL-DQL
java·开发语言·数据库·笔记·mysql·dql
霍田煜熙19 分钟前
CBMS最新源码
算法
NAGNIP30 分钟前
主流的激活函数有哪些?
算法
NAGNIP33 分钟前
Self-Attention 为什么要做 QKV 的线性变换?又为什么要做 Softmax?
算法
TT哇34 分钟前
【RabbitMQ】@Autowired private RabbitTemplate rabbitTemplate;
java·分布式·rabbitmq