使用希尔增量的排序例子: 使用希尔增量排序额最坏情形时的运行时间为:θ(N2 ) #include <iostream> typedef int ElementType; void Shellsort(ElementType A[], int N) { int i,j,Increment; ElementType Tmp; for (Increment = N/2; Increment > 0; Increment /= 2) for (i = Increment;i < N ;i++) { Tmp = A[i]; for(j = i; j >= Increment; j -= Increment) if(Tmp < A[j - Increment]) A[j] = A[j - Increment]; else break; A[j] = Tmp; } } int main() { int i; ElementType A[10]; for(i = 0; i < 10; i++) std::cin >>A[i]; Shellsort(A,10); for(i = 0 ; i < 10; i++) std::cout<< A[i]<< " "; std::cout<< std::endl; system("pause"); return 0; }