//希尔排序 void shellSort(vectorv) { cout << "希尔排序,升序:" << endl; int gap = v.size(); while (gap != 1) { gap = gap / 3 + 1; for (int i = gap; i = 0; j -= gap) { if (v[j] > temp) { v[j + gap] = v[j]; } else { break; } } v[j + gap] = temp; } } printVector(v); } //复杂度说明:时间复杂度为O(n^1.5)