From 72af0dedf9e18911da65b9a5c4906689e868d9fc Mon Sep 17 00:00:00 2001 From: Richard-Qin-X Date: Mon, 8 Jun 2026 17:10:31 +0800 Subject: [legacy] Add functional and performance test suites --- rcc-legacy/tests/upload/shell_sort.sy | 61 +++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 rcc-legacy/tests/upload/shell_sort.sy (limited to 'rcc-legacy/tests/upload/shell_sort.sy') diff --git a/rcc-legacy/tests/upload/shell_sort.sy b/rcc-legacy/tests/upload/shell_sort.sy new file mode 100644 index 0000000..707cfd3 --- /dev/null +++ b/rcc-legacy/tests/upload/shell_sort.sy @@ -0,0 +1,61 @@ +int a[1000]; + +/* 希尔排序 - 用Sedgewick增量序列 */ +void ShellSort(int a[],int n) +{ + /* 这里只列出一小部分增量 */ + int Sedgewick[10]; + int si; + int D; + int i; + int p; + int tmp; + + Sedgewick[0] = 929; + Sedgewick[1] = 505; + Sedgewick[2] = 209; + Sedgewick[3] = 109; + Sedgewick[4] = 41; + Sedgewick[5] = 19; + Sedgewick[6] = 5; + Sedgewick[7] = 1; + Sedgewick[8] = 0; + + si=0; + while(Sedgewick[si]>=n) { + si = si+1; + } + + D=Sedgewick[si]; + while(D>0){ + p=D; + while(p=D&&a[i-D]>tmp){ + a[i]=a[i-D]; + i=i-D; + } + a[i]=tmp; + p=p+1; + } + si=si+1; + D=Sedgewick[si]; + } +} + +int main() +{ + int size; + int i; + size = getint(); + i = 0; + while(i