双冒泡排序算法,比传统的冒泡排序效率几乎提升了一倍,算法减少了一半
江湖评谈 2016-12-28 04:18:46 以下面这种算法来看,效率几乎提升了一倍,算法则减少了一半。
for(i=0;i<n;i++) printf("%d",source[i]);
printf("\n");
int Low=0;
int Hight=n-1;
while(Low<Hight)
{
for(j=Low;j<Hight;j++)
{
if(source[j]>source[j+1]) { temp=source[j];source[j]=source[j+1];source[j+1]=temp;}
}
--Hight;printf("\n");
for(j=Hight;j>Low;j--)
{
if(source[j]<source[j-1]) { temp=source[j];source[j]=source[j-1];source[j-1]=temp;}
}
++Low;printf("\n");
}