千家信息网

c#如何实现插入排序

发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,这篇文章将为大家详细讲解有关c#如何实现插入排序,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。插入排序1.直接插入排序void InsertSort(int *a,
千家信息网最后更新 2025年01月17日c#如何实现插入排序

这篇文章将为大家详细讲解有关c#如何实现插入排序,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

  • 插入排序

    1.直接插入排序

void InsertSort(int *a, size_t size)//直接插入排序

{

assert(a);

for (size_t i = 0; i < size - 1; ++i)

{

int end = i;

int tmp = a[end + 1];

while (end >= 0 && a[end]>tmp)

{

a[end + 1] = a[end];

--end;

}

a[end+1] = tmp;

}

}

  • 2.希尔排序

//希尔排序

void ShellSort(int *a, size_t size)

{

assert(a);

int gap = size;

while (gap > 1)

{

gap = gap / 3 + 1;

for (size_t i = 0; i < (size - gap); i++)

{

int end = i;

int tmp = a[end + gap];

while (end >= 0 && a[end]>tmp)

{

a[end + 1] = a[end];

end = end - gap;

}

a[end + gap] = tmp;

}

}

}

关于"c#如何实现插入排序"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

0