From cfba67720d902004be3bf43c17277bb5c7ae5adc Mon Sep 17 00:00:00 2001 From: pbjgvwc2r <1487290298@qq.com> Date: Sat, 19 Feb 2022 16:16:47 +0800 Subject: [PATCH] =?UTF-8?q?Update=20=E6=8F=92=E5=85=A5=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 插入排序 | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/插入排序 b/插入排序 index 93bd98a..7ee33d5 100644 --- a/插入排序 +++ b/插入排序 @@ -32,3 +32,46 @@ int main() printf("%d ",arr[i]); } } +//希尔排序 +//复杂度:O(n^1.3) +//运行时间:170ms +#include +void ShellSort(int* arr, int n) +{ + int gap = n; + while (gap>1) + { + gap = gap / 2; + for (int i = 0; i < n - gap; ++i) + { + int end = i; + int tem = arr[end + gap]; + while (end >= 0) + { + if (tem < arr[end]) + { + arr[end + gap] = arr[end]; + end -= gap; + } + else + break; + } + arr[end + gap] = tem; + } + } +} + +int main() +{ + int n; + scanf("%d",&n); + int arr[n]; + for(int i=0;i