欢迎来到天天文库
浏览记录
ID:11510661
大小:88.00 KB
页数:14页
时间:2018-07-12
《数据结构课程设计—内部排序算法比较》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、#include#include#include#defineMAXNUM100#defineRADIX10#defineMAX8#defineMAX_SPACE10000typedefintKeysType;typedefstruct{KeysTypekeys[MAX];intnext;}SLCell;typedefstruct{SLCellr[MAX_SPACE];intkeynum;intrecnum;}SLList;typedefintArrType[RADIX];typedefstruct{intkey;}datatype;dat
2、atypeR[MAXNUM];//定义结构体数组intcn[11]={0};intmn[11]={0};voidCreateSLList(SLList&L,intn,datatypeR[])//基数排序{L.recnum=n;L.keynum=3;mn[10]+=2;//printf("pleaseinputdatanumbers:/n");//scanf("%d",&L.recnum);//printf("pleaseinputkeynumbers:/n");//scanf("%d",&L.keynum);//printf("pleaseinput%dnumbers:/n",L.recnum
3、);for(inti=1;i<=L.recnum;i++){cn[10]++;intj=L.keynum-1;L.r[i].keys[j--]=R[i].key/100;L.r[i].keys[j--]=R[i].key%100/10;L.r[i].keys[j]=R[i].key%10;mn[10]+=3;}for(i=0;i4、i=L.r[0].next;i;i=L.r[i].next){cn[10]++;for(intj=L.keynum-1;j>=0;j--){printf("%d",L.r[i].keys[j]);cn[10]++;}cn[10]++;printf("");}cn[10]++;printf("");}voidDistribute(SLCell(&r)[MAX_SPACE],inti,ArrType&f,ArrType&e)//基数排序{intj,p;for(j=0;j5、p;p=r[p].next){cn[10]++;j=r[p].keys[i];mn[10]++;if(!f[j]){f[j]=p;mn[10]++;}else{r[e[j]].next=p;mn[10]++;}e[j]=p;mn[10]++;}cn[10]++;}voidCollect(SLCell(&r)[MAX_SPACE],inti,ArrTypef,ArrTypee)//基数排序{intj,t;for(j=0;!f[j];j++);{cn[10]++;r[0].next=f[j];mn[10]++;}cn[10]++;t=e[j];mn[10]++;while(j6、n[10]++;for(j++;j7、/Display(L);printf("");}cn[10]++;}voidA(datatypeR[],intn)//基数排序****{SLListL;CreateSLList(L,n,R);//printf("排序前的结果是:");//Display(L);RadixSort(L);//printf("排序后的结果是:");//Display(L);}voidD_InsertSort
4、i=L.r[0].next;i;i=L.r[i].next){cn[10]++;for(intj=L.keynum-1;j>=0;j--){printf("%d",L.r[i].keys[j]);cn[10]++;}cn[10]++;printf("");}cn[10]++;printf("");}voidDistribute(SLCell(&r)[MAX_SPACE],inti,ArrType&f,ArrType&e)//基数排序{intj,p;for(j=0;j5、p;p=r[p].next){cn[10]++;j=r[p].keys[i];mn[10]++;if(!f[j]){f[j]=p;mn[10]++;}else{r[e[j]].next=p;mn[10]++;}e[j]=p;mn[10]++;}cn[10]++;}voidCollect(SLCell(&r)[MAX_SPACE],inti,ArrTypef,ArrTypee)//基数排序{intj,t;for(j=0;!f[j];j++);{cn[10]++;r[0].next=f[j];mn[10]++;}cn[10]++;t=e[j];mn[10]++;while(j6、n[10]++;for(j++;j7、/Display(L);printf("");}cn[10]++;}voidA(datatypeR[],intn)//基数排序****{SLListL;CreateSLList(L,n,R);//printf("排序前的结果是:");//Display(L);RadixSort(L);//printf("排序后的结果是:");//Display(L);}voidD_InsertSort
5、p;p=r[p].next){cn[10]++;j=r[p].keys[i];mn[10]++;if(!f[j]){f[j]=p;mn[10]++;}else{r[e[j]].next=p;mn[10]++;}e[j]=p;mn[10]++;}cn[10]++;}voidCollect(SLCell(&r)[MAX_SPACE],inti,ArrTypef,ArrTypee)//基数排序{intj,t;for(j=0;!f[j];j++);{cn[10]++;r[0].next=f[j];mn[10]++;}cn[10]++;t=e[j];mn[10]++;while(j6、n[10]++;for(j++;j7、/Display(L);printf("");}cn[10]++;}voidA(datatypeR[],intn)//基数排序****{SLListL;CreateSLList(L,n,R);//printf("排序前的结果是:");//Display(L);RadixSort(L);//printf("排序后的结果是:");//Display(L);}voidD_InsertSort
6、n[10]++;for(j++;j7、/Display(L);printf("");}cn[10]++;}voidA(datatypeR[],intn)//基数排序****{SLListL;CreateSLList(L,n,R);//printf("排序前的结果是:");//Display(L);RadixSort(L);//printf("排序后的结果是:");//Display(L);}voidD_InsertSort
7、/Display(L);printf("");}cn[10]++;}voidA(datatypeR[],intn)//基数排序****{SLListL;CreateSLList(L,n,R);//printf("排序前的结果是:");//Display(L);RadixSort(L);//printf("排序后的结果是:");//Display(L);}voidD_InsertSort
此文档下载收益归作者所有