希尔排序-C语言
Posted 霍同学笔记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了希尔排序-C语言相关的知识,希望对你有一定的参考价值。
void shellsort(int arr[],int length)
{
int increment= length;
int i ,j;
do
{
increment=increment/3+1;
for(i=increment;i<=length;i++)
{
if(arr[i]>arr[i+increment])
{
int temp =arr[i];
for(j=i-increment;j>=0 && temp < arr[j];j-=increment)
{
arr[j+increment]=arr[j];
}
arr[j+increment]=temp;
}
}
}
while(increment>1);
}
int main()
{
int arr[9]={1,8,3,99,33,66,88,22,66};
shellsort(arr,9);
int i;
for(i=0;i<9;i++)
{
printf(" %d ",arr[i]);
}
return 0;
}
以上是关于希尔排序-C语言的主要内容,如果未能解决你的问题,请参考以下文章
8种面试经典!排序详解--选择,插入,希尔,冒泡,堆排,3种快排,快排非递归,归并,归并非递归,计数(图+C语言代码+时间复杂度)
8种面试经典排序详解--选择,插入,希尔,冒泡,堆排,3种快排及非递归,归并及非递归,计数(图+C语言代码+时间复杂度)
8种面试经典排序详解--选择,插入,希尔,冒泡,堆排,3种快排及非递归,归并及非递归,计数(图+C语言代码+时间复杂度)