java实现冒泡排序算法

冒泡排序的基本思想是从头开始扫描需要排序的元素,把相邻的元素进行对比,然后移动元素,一直到所有的元素是一个有序排列为止。
如果有n个元素,一般需要比较n-1趟,第一趟把最大的移动至最后,第2趟就只需要比较前n-1个元素就行了,所以每一趟需要比较的次数是n-趟数。(换一下markdown编辑器)

java算法实现如下:

public class Bubble 
{
public static void main(String[] args) 
{
int[] values={3,1,4,5,2};
maopao(values);
for(int i=0;iout.println("Index: "+i+"  value: "+values[i]);
}
public staic void maopao(int[] values){
int temp;
for(int i=0;i1;i++){    //趟数
for(j=0;j1;j++){     //每一趟比较的次数
if(values[j]>values[j+1]){
          temp=values[j];
          values[j]=values[j+1];
          values[j+1]=temp;
} 

}
}
}
上面5个数
第0趟比较41 3 4  2 5 i=0 j<5-11趟比较31 3 2 4 5   i=1; j<5-1-i2趟比较21 2 3 4 5   i=2; j<5-1-i3趟比较11 2 3 4  5  i=3; j<5-1-i

你可能感兴趣的:(算法)