1 #include"iostream" 2 #include"stdio.h" 3 using namespace std; 4 5 void ShellSort(int *data,int left,int right) 6 { 7 int len=right-left+1; 8 int d=len; 9 while(d<1) 10 { 11 d=(d+1)/2; 12 for(int i=left;i<right+1-d;i++) 13 { 14 if(data[i+d]<data[i]) 15 { 16 int tmp=data[i+d]; 17 data[i+d]=data[i]; 18 data[i]=tmp; 19 } 20 } 21 } 22 } 23 void ShellSort2(int *data,int len) 24 { 25 int d=len; 26 while(d>1) 27 { 28 d=(d+1)/2; 29 for(int i=0;i<len-d;i++) 30 { 31 if(data[i+d]<data[i]) 32 { 33 int tmp=data[i+d]; 34 data[i+d]=data[i]; 35 data[i]=tmp; 36 } 37 } 38 for(int i=0;i<10;i++) 39 printf("%5d",data[i]); 40 printf("\n"); 41 } 42 } 43 44 int main() 45 { 46 int list[10]; 47 int n=9,m=0,i; 48 printf("input 10 numbers: \n"); 49 for(int i=0;i<10;i++) 50 scanf("%d",&list[i]); 51 printf("\n"); 52 ShellSort2(list,10); 53 // ShellSort(list,0,9); 54 printf("\n"); 55 for(int i=0;i<10;i++) 56 printf("%5d",list[i]); 57 printf("\n"); 58 }
View Code
转载于:https://www.cnblogs.com/acm-jing/p/10365630.html
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/101127.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...