如何理解冒泡排序

什么是冒泡?

      就像气泡漂上来一样,值比较小的在前,值比较大的在后。也就是说在一组数里面,其中的一个数与其它的数相比较,如果这个数与其它比较的数小,那么它就在那个比他大的数前面,直到遇见比它小的数。

    如果说我已经比较出了两个数大小,那么我如何让它们互相改变自己的位置呢?解决这个问题之前我们先提出一个问题:

      有一个装满水的A杯子,和一个装满水的B杯子,我想让A杯与B杯的水互换,我应该怎样做?方法就是找一空杯子。也就是说我把A杯子的水倒入空杯子里面,再把B杯的水倒入A杯子里面,最后再把空杯字里面的水倒入B杯子里面,这样就实现了A与B的互换。

      利用这个思想我们就可以解决两个数如何互换位置的问题。

请看下面代码:

int []array=new int[*]

int temp=0;

for(int i=0;i<array.Length-1;i++)

{

for(int j=i+1;j<array.Length;j++)

{

if(array[j]<array[i])

{

temp=array[i];

array[i]=array[j];

array[j]=temp

}

}

}

这是用了两个循环,对两个值进行比较然后利用了上面的思想解决了两个数互换位置的方法。

自己的一些理解,希望大家能够喜欢!!!

如有错误,请多多包涵!




猜你喜欢

转载自blog.csdn.net/gods_boy/article/details/79985371