📄 sort_sh.c
字号:
/* file name: sort_sh.c*/
/*希尔排序*/
#include <stdio.h>
void main()
{
int data[11] = {0, 75, 23, 98, 44, 57, 12, 29, 64, 38, 82};
int i, j, k, incr, temp;
printf("\n<< Shell sort >>\n");
printf("\nNumber : ");
for(i = 1; i <= 10; i++)
printf("%d ", data[i]);
puts("");
for(i = 0; i < 60; i++) printf("-");
incr = 10/2;
while(incr > 0)
{
for(i = incr+1; i <= 10; i++)
{
j = i - incr;
while(j > 0)
if(data[j] > data[j+incr]) /*比较每部分的数据*/
{/* 大小排序不对则交换*/
temp = data[j];
data[j] = data[j+incr];
data[j+incr] = temp;
j = j - incr;
}
else
j = 0;
}
printf("\nAccess : ");
for(k = 1; k <= 10; k++)
printf("%d ", data[k]);
incr = incr/2;
}
puts("");
for(i = 0; i < 60; i++) printf("-");
printf("\nSorting: ");
for(i = 1; i <= 10; i++)
printf("%d ", data[i]);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -