技术栈

C语言实现希尔排序

劲夫学编程2023-10-20 23:15
c 复制代码
void ShellSort(int arr[], int n) {//希尔排序--升序
	int i = 0;
	int j = 0;
	int d = n / 2;
	for (d = n / 2;d >= 1;d /= 2) {
		for (i = d;i < n;i++) {
			int tmp = arr[i];
			for (j = i;j >= 0;j -= d) {
				if (tmp < arr[j - d]) {
					arr[j] = arr[j - d];
				}
				else {
					arr[j] = tmp;
					break;
				}
			}
		}
	}
}

int main() {
	int arr[10] = { 3,5,2,9,1,4,8,6,10,7 };
	int n = 10;
	ShellSort(arr, 10);
	for (int i = 0;i < 10;i++) {
		printf("%d ", arr[i]);
	}
	return 0;
}
上一篇:【STM32】--基础了解
下一篇:我们不一样①
相关推荐
yunyun32123
7 分钟前
跨语言调用C++接口
开发语言·c++·算法
m0_51801948
10 分钟前
C++中的装饰器模式变体
开发语言·c++·算法
xushichao1989
17 分钟前
高性能密码学库
开发语言·c++·算法
m0_51801948
19 分钟前
C++代码混淆与保护
开发语言·c++·算法
m0_56988147
22 分钟前
C++中的智能指针详解
开发语言·c++·算法
blackicexs
25 分钟前
第九周第三天
算法
自信15041305759
34 分钟前
选择排序算法
c语言·数据结构·算法·排序算法
2401_87354492
36 分钟前
基于C++的游戏引擎开发
开发语言·c++·算法
add45a
36 分钟前
C++中的组合模式
开发语言·c++·算法
無限進步D
38 分钟前
简单贪心算法 cpp
c++·算法·贪心算法·蓝桥杯·入门·竞赛
热门推荐
01GitHub 镜像站点02Qwen3.5 开源全解析:从 0.8B 到 397B,代际升级 + 全场景选型指南03围棋-html版本04小黑课堂计算机二级WPSoffice题库软件下载安装教程(2026年3月最新版)05班级宠物园部署指南06OpenClaw 使用和管理 MCP 完全指南07AI 编程三剑客:Spec-Kit、OpenSpec、Superpowers 深度对比与实战指南08OpenClaw Control UI安全上下文访问配置09UV安装并设置国内源10“wsl --install -d Ubuntu-22.04”下载慢,中国地区离线安装 Ubuntu 22.04 WSL方法(亲测2025年5月6日)