数据结构实验 排序算法效率比较平台Word格式文档下载.docx
- 文档编号:8691471
- 上传时间:2023-05-12
- 格式:DOCX
- 页数:15
- 大小:17.12KB
数据结构实验 排序算法效率比较平台Word格式文档下载.docx
《数据结构实验 排序算法效率比较平台Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据结构实验 排序算法效率比较平台Word格式文档下载.docx(15页珍藏版)》请在冰点文库上搜索。
le;
i++){
b[i]=c[i];
};
for(j=le-1;
j>
i;
j--){
bj=bj+1;
q=strcmp(b[i].key,b[j].key);
if(q==1){
a=b[i];
b[i]=b[j];
b[j]=a;
jh=jh+3;
cout<
<
"
冒泡法:
endl<
完成的序列如下:
endl;
b[i].key<
"
;
共进行比较"
bj<
次,进行交换"
jh<
次"
***************************"
//直接插入排序
voidzhijiecharu(pointc[])
pointb[le+1];
b[i+1]=c[i];
for(i=2;
=le+1;
q=strcmp(b[i].key,b[i-1].key);
if(q==-1){
b[0]=b[i];
b[i]=b[i-1];
jh=jh+2;
q=strcmp(b[0].key,b[i-2].key);
bj=bj+1;
for(j=i-2;
q==-1;
b[j+1]=b[j];
jh=jh+1;
q=strcmp(b[0].key,b[j-1].key);
b[j+1]=b[0];
直接插入排序:
for(i=1;
le+1;
//
voidshellinsert(pointc[],intdk,intd[])
intj,i,q;
pointa;
for(i=dk+1;
q=strcmp(c[i].key,c[i-dk].key);
d[0]=d[0]+1;
a=c[i];
q=strcmp(a.key,c[i-dk].key);
d[1]=d[1]+1;
for(j=i-dk;
0&
&
j=j-dk){
c[j+dk]=c[j];
q=strcmp(a.key,c[j-dk].key);
c[j+dk]=a;
voidshellsort(pointc[],intdlta[],intt)
intk,d[2],i;
d[0]=0;
d[1]=0;
for(k=0;
k<
k++){
b[k+1]=c[k];
t;
k++)shellinsert(b,dlta[k],d);
希尔排序:
d[0]<
d[1]<
//希尔排序
voidxier(pointc[])
intdlta[20],t,i;
t=le/2;
20;
i++){
dlta[i]=t+1;
if(t==0)break;
t=t/2;
t=i+1;
shellsort(c,dlta,t);
//简单选择排序
voidjiandanxuanze(pointc[])
inti,j,jh=0,bj=0,q,w;
le-1;
q=i;
for(j=i+1;
j<
j++){
w=strcmp(b[q].key,b[j].key);
if(w==1)q=j;
if(q==i)continue;
else{
b[i]=b[q];
b[q]=a;
简单选择排序排序:
intpartition(pointc[],intlow,inthigh,intd[])
pointa,b;
intjh=0,bj=0,q;
a=c[low];
while(low<
high){
q=strcmp(c[high].key,a.key);
high&
q!
=-1){high--;
q=strcmp(c[high].key,a.key);
b=c[low];
c[low]=c[high];
c[high]=b;
d[1]=d[1]+3;
q=strcmp(c[low].key,a.key);
=1){low++;
q=strcmp(c[low].key,a.key);
return(low);
voidqsort(pointc[],intlow,inthigh,intd[])
intpivotloc;
if(low<
pivotloc=partition(c,low,high,d);
qsort(c,low,pivotloc-1,d);
qsort(c,pivotloc+1,high,d);
//快速排序
voidkuaisu(pointc[])
pointb[le];
inti,d[2];
d[0]=0;
qsort(b,0,le-1,d);
快速排序:
voiddiu(pointb[],intwe,int*jh,int*bj)
inti,q;
for(i=we/2-1;
i>
=0;
i--){
q=strcmp(b[i].key,b[2*i].key);
*bj=*bj+1;
b[i]=b[2*i];
b[2*i]=a;
*jh=*jh+3;
if(2*i+1<
we){
q=strcmp(b[i].key,b[2*i+1].key);
b[i]=b[2*i+1];
b[2*i+1]=a;
a=b[we-1];
b[we-1]=b[0];
b[0]=a;
//堆排序
voiddiup(pointc[])
inti,jh=0,bj=0,*j,*bl;
j=&
jh;
bl=&
bj;
for(i=le;
1;
diu(b,i,j,bl);
堆排序:
voidmain()
inti,j,n=10,ans,an;
charb[]="
abcdefghijklmnopqrstuvwxyz"
pointa[le];
n=10;
an=rand()*(n-1)/RAND_MAX+1;
n=26;
for(j=0;
an;
ans=rand()*(n-0)/RAND_MAX+0;
a[i].key[j]=b[ans];
a[i].key[j]='
\0'
a[i].key<
zhijiecharu(a);
maopao(a);
xier(a);
jiandanxuanze(a);
kuaisu(a);
diup(a);
四、流程图
五、调试过程
要很好的理解各种算法就可以这样才可以编出程序来,要注意比较次数和交换次数的计数问题。
六、结果分析
运行结果如下:
o
vp
jxvte
snhacjde
ldaajnopp
rl
bpuu
hwsyy
dmgwf
vzzpkghv
j
r
a
hhprvsmft
lytcp
tpoj
fl
nztiermb
ndydxsh
bzrd
vpeevmen
khortsm
jv
n
lcyxoi
jwilh
htoftvknx
z
bnfvqr
vd
t
yhi
tv
ptgdabu
fdoacltr
blfsh
gpnq
nz
yeiezlz
q
l
bxhftkfqp
mpqwv
sojeto
gepspjmct
qrudow
psbrziohe
w
teicbqvo
khmnd
tiv
wshydbunp
bwricnfhx
rcmjm
njrnpkas
mtmjuojy
ejdtyp
i
ww
swadsq
be
iijruu
puxdq
gdwb
ohof
cvd
uxu
pjwfwfg
zbcnl
g
gddycbbix
lyvn
skganykg
grylxa
puodfjakc
wbvrru
rdrsu
scoybh
zq
xjs
eg
xcxlc
ezuwflat
ki
bgegdqxyf
qrxlxrdq
kyopng
jauf
k
bfeqlp
lrkvpfy
kzexolqs
h
kxs
xkkxiko
tttt
fh
abebfeqlpbgegdqxyfblfshbnfvqrbpuubwricnfhxbxhftkfqpbz
rdcvddmgwfegejdtypezuwflatfdoacltrfhflggddycbbix
gdwbgepspjmctgpnqgrylxahhhprvsmfthtoftvknxhwsyyiiijr
uujjaufjvjwilhjxvtekkhmndkhortsmkikxskyopngk
zexolqsllcyxoildaajnopplrkvpfylytcplyvnmpqwvmtmjuojyn
ndydxshnjrnpkasnznztiermboohofpjwfwfgpsbrzioheptgdabu
puodfjakcpuxdqqqqqrudowqrxlxrdqrrcmjmrdrsurl
scoybhskganykgsnhacjdesojetoswadsqtteicbqvotivtpojttt
ttvuxuvdvpvpeevmenvzzpkghvwwwbvrruwshydbunpww
xcxlcxjsxkkxikoyeiezlzyhizzbcnlzq
共进行比较2528次,进行交换2616次
***************************
起泡法:
共进行比较4950次,进行交换2469次
共进行比较838次,进行交换800次
共进行比较4950次,进行交换279次
共进行比较1068次,进行交换984次
共进行比较5000次,进行交换7059次
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构实验 排序算法效率比较平台 数据结构 实验 排序 算法 效率 比较 平台