📄 cjj116.htm
字号:
{<BR>
for(i=gap;i<s;i++)<BR>
{<BR>
j=i-gap;<BR>
while(j>=gap)<BR>
if(s.A[j]>s.A[j+gap])<BR>
{<BR>
temp=s.A[j];<BR>
s.A[j]=s.A[j+gap];<BR>
s.A[j+gap]=temp;<BR>
j=j-gap;<BR>
}<BR>
else
j=0;<BR>
}<BR>
gap=gap/2;<BR> }<BR>}<BR>void
process::bubblesort(Sample
&s) //
冒泡排序<BR>{<BR> int
i,j,temp;<BR>
for(i=0;i<s.n;i++)<BR>
for(j=s.n-1;j>=i+1;j--)<BR>
if(s.A[j]<s.A[j-1])<BR>
{<BR>
temp=s.A[j];<BR>
s.a[j]=s.A[j-1];<BR>
s.A[j-1]=temp;<BR>
}<BR>}<BR>void process::quicksort(Sample
&s) //
快速排序<BR>{<BR>
qsort(s,0,s.n-1);<BR>}<BR>void
process::qsort(Sample &s,int l,int
h)<BR>{<BR> int
i=l,j=h,temp;<BR>
if(l<h)<BR> {
temp=s.A[l];<BR> do<BR>
{<BR>
while(j>i&&s.A[j]>=temp)<BR>
j--;<BR>
if(i<j)<BR>
{<BR>
s.A[i]=s.A[j];<BR>
i++;<BR>
}<BR>
while(i<j&&s.A[i]<=temp)<BR>
i++;<BR>
if(i<j)<BR>
{<BR>
s.A[j]=s.A[i];<BR>
j--;<BR>
}<BR>
}while(i<j);<BR>
s.A[i]=temp;<BR>
qsort(s,l,j-1);<BR>
qsort(s,j+1,h);<BR><BR>
}<BR>}<BR>void process::selectsort(Sample
&s) //
选择排序<BR>{<BR> int
i,j,k,temp;<BR>
for(i=0;i<s.n;i++)<BR>
{<BR>
k=i;<BR>
for(j=i+1;j<=s.n-1;j++)<BR>
if(s.A[j]<s.A[k])<BR>
k=j;<BR> temp=s.A[i];<BR>
s.A[i]=s.A[k];<BR>
s.A[k]=temp;<BR> }<BR>}<BR>void
process::disp(Sample
&s)<BR>{<BR> for(int
i=0;i<s.n;i++)<BR>
cout<<s.A[i]<<"
";<BR>
cout<<endl;<BR>}<BR>void
main()<BR>{<BR> int
sel;<BR> Sample
s;<BR> process
p;<BR>
p.getdata(s);<BR>
cout<<"原来序列:";<BR>
p.disp(s);<BR>
cout<<"0:插入排序 1:希尔排序 2:冒泡排序 3:快速排序
4:选择排序 其它退出"<<endl;<BR>
cout<<"选择排序方法:";<BR>
cin>>sel;<BR>
switch(sel)<BR>
{<BR>
case
0:<BR>
p.insertsort(s);<BR>
cout<<"插入排序结果:";<BR>
break;<BR>
case
1:<BR>
p.shellsort(s);<BR>
cout<<"希尔排序结果:";<BR> break;<BR> case
2:<BR> p.bubblesort(s);<BR> cout<<"冒泡排序结果:";<BR> break;<BR> case
3:<BR> p.quicksort(s);<BR> cout<<"快速排序结果:";<BR> break;<BR> case
4:<BR> p.selectsort(s);<BR> cout<<"选择排序结果:";<BR> break;<BR> }<BR> p.disp(s);<BR>}<BR><BR>本程序的执行结果如下:<BR>元素个数:8<BR>输入第1个数据:
1<BR>输入第2个数据: 6<BR>输入第3个数据: 5<BR>输入第4个数据:
3<BR>输入第5个数据: 4<BR>输入第6个数据: 8<BR>输入第7个数据:
2<BR>输入第8个数据: 7<BR>原来序列: 1 6 5 3 4 8 2
7<BR>0:插入排序 1:希尔排序 2:冒泡排序 3:快速排序 4:选择排序
其它退出<BR>选择排序方法: 1<BR>希尔排序结果: 1 2 3 4 5 6 7
8<BR><BR><BR>
<BR><BR></TD>
</TR>
</TBODY>
</TABLE>
</TD>
</TR>
<TR>
<TD height=35 width="100%">
<DIV align=center></DIV>
</TD>
</TR>
</TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
</TD></TR></TBODY>
</TABLE>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width=750>
<TBODY>
<TR>
<TD bgColor=#c1c1c1 height=1></TD>
</TR>
</TBODY>
</TABLE>
<TABLE align=center border=1 cellPadding=0 cellSpacing=1
style="BORDER-COLLAPSE: collapse" width=550>
<TBODY>
<td align=center>
<div align="center">
<p><a href=mailto:jjsun36@sohu.com ><span class="body14black">mailto:jjsun36@sohu.com</span></a><span class="body12red">
热线电话:0523-4864559</span></p>
</div>
</td>
</TBODY>
</TABLE>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -