0
点赞
收藏
分享

微信扫一扫

C的数据结构---八大排序中篇

幺幺零 2022-03-27 阅读 59
算法

1.希尔排序

 分组处理

//希尔排序

#include <stdio.h>
#include <stdlib.h>

void Print(int *arr, int size)
{
	for (int i = 0; i < size; i++)
	{
		printf(" %d  ", arr[i]);
	}
	printf("\n");
}

void Shell_Sort(int *arr, int len)
{
	int gap = len;
	do
	{
		gap = gap / 3 + 1;
		for (int i = gap; i<len; i++) 
		{
			int k = i;
			int tmp = arr[i];
			for (int j = i - gap; j >= 0 && arr[j]>tmp; j -= gap)
			{
				arr[j + gap] = arr[j];
				k = j;
			}
			arr[k] = tmp;	
		}
		Print(arr, len);
	} while (ga
举报

相关推荐

0 条评论