希尔排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了希尔排序相关的知识,希望对你有一定的参考价值。
希尔排序
不知道怎么证明希尔排序的正确性
#include<stdio.h> void view(int Av[]); void shellsort(int v[], int n){ int gap, i, j, temp; for(gap=n/2;gap>0;gap/=2){ for(i=gap;i<n;i++){ for(j=i-gap;j>=0 && v[j]>v[j+gap];j-=gap){ temp=v[j]; v[j]=v[j+gap]; v[j+gap]=temp; } } } } int main(){ int v[]={1,5,4,3,2,6,7,8}; shellsort(v,8); view(v); getchar(); getchar(); return 0; } void view(int v[]){//显示A数组当前状态 for(int i=0;i<8;i++){ putchar(v[i]+‘0‘); putchar(‘ ‘); } putchar(‘\n‘); }
运行结果
以上是关于希尔排序的主要内容,如果未能解决你的问题,请参考以下文章