SHELL SORT

void shellsort(int A[], int len)
{
        int j;
        int increment = len;
        do{
                increment = increment/3+1;
                printf("increment = %d\n", increment);
                for(int i = increment; i < len; i++){

                        if(A[i] < A[i-increment]){
                                int tmp = A[i];
                                for(j = i-increment; j >= 0 && A[j] >= tmp; j -= increment)
                                        A[j+increment] = A[j];

                                A[j+increment] = tmp;


                        }

                }
        }while(increment >1);

}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容