技术栈

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】--基础了解
下一篇:我们不一样①
相关推荐
码爸
1 小时前
线性回归算法
算法·机器学习·线性回归
Coder-magician
2 小时前
《代码随想录》刷题打卡day51:图论-part09(dijistra堆优化,Bellman_ford算法)
算法·图论
Nil208
2 小时前
leetcode 763划分字母区间
算法·leetcode·职场和发展
不会就选b
2 小时前
算法日常・每日刷题--<动态规划>20
算法·leetcode·动态规划
青少儿编程课堂
3 小时前
迪杰斯特拉(Dijkstra)算法:单源最短路与赛场路线规划
c++·python·算法·bfs·信息学竞赛
不会就选b
3 小时前
算法日常・每日刷题--<动态规划>19
算法·leetcode·职场和发展
没有钱的钱仔
5 小时前
协方差矩阵含义
算法·机器学习·矩阵
垆边人似月.
5 小时前
华为机试题 :和为 K 的子数组个数
算法·leetcode·华为
三*一
5 小时前
优化修整算法
前端·javascript·算法
热门推荐
01国内可直接用、免费额度/永久免费的大模型API清单(含 SiliconFlow、火山、阿里、智谱、百度、Kimi、DeepSeek、DMXAPI 等)02历年考研数学一、数学二、数学三真题试卷及答案PDF03「全语录+省流版」邵艾伦 × 孙宇晨:聊风口、聊个人IP、聊年轻人如何抓住 AI 时代的机会04GitHub 镜像站点05如何新建文件夹? 电脑新建文件夹的4种方法06蜘蛛磁力 搜索引擎大全,如何使用蜘蛛磁力查找磁力链接07轻量化AI渗透武器库|ARTEX自主攻防系统、资产梳理、漏洞挖掘、链路分析全流程智能化落地08Windows 10/11 如何退出微软账户并改用本地账户登录(含找不到选项的解决方法)09Telegram APK 下载安装完整指南 — 2026年最新10微信历史版本含下载地址( Windows PC | 安卓 | MAC )及设置微信不更新