135-1821-9792

C++实现希尔排序

#pragma once

void ShellSort(int* array, size_t n)
{
	int gap = n;

	while (gap > 1)
	{
		gap = gap/3 + 1;

		for (size_t i = 0; i < n-gap; ++i)
		{
			int end = i;
			int tmp = array[end+gap];

			while ((end >= 0) && array[end] > tmp)
			{
				array[end+gap] = array[end];
				end -= gap;
			}

			array[end+gap] = tmp;
		}
	}
}

文章标题:C++实现希尔排序
当前URL:http://wtcwzsj.com/article/jsppjs.html

其他资讯



Copyright © 2009-2022 www.wtcwzsj.com 青羊区广皓图文设计工作室(个体工商户) 版权所有 蜀ICP备19037934号