冒泡算法(java)

来源:互联网 发布:生理期会情绪低落知乎 编辑:程序博客网 时间:2024/06/10 03:15

一、基本思路:

冒泡排序是一种简单的交换类排序。其基本思路是,从头开始扫描待排序的元素,在扫描过程中依次对相邻元素进行比较,将关键字值大的元素后移。每经过一趟排序后,关键字值最大的元素将移到末尾,此时记下该元素的位置,下一趟排序只需要比较到此位置为止,直到所有元素都已有序排列。

一般地,对n个元素进行冒泡排序,总共需要进行n-1趟。第1趟需要比较n-1次,第2趟需要比较n-2次,......第i趟需要比较n-i次。

2、算法实现

***************************************************

数组:3,1,6,2,9,0

冒泡算法:

第1次排序结果:1 3 2 6 0 9
第2次排序结果:1 2 3 0 6 9
第3次排序结果:1 2 0 3 6 9
第4次排序结果:1 0 2 3 6 9
第5次排序结果:0 1 2 3 6 9

***************************************************

public class BubbleSort
{
public static void main(String[] args){
int[] values = {3,1,6,2,9,0};
for(int i=0;i<values.length-1;i++){
for(int j=0;j<values.length-i-1;j++){
if(values[j]>values[j+1]){
int temp = values[j];
values[j]=values[j+1];
values[j+1]= temp;
}
}
System.out.print("第" + (i + 1) + "次排序结果:");
                for(int a = 0; a < values.length; a++){
                   System.out.print(values[a] + " ");
}
System.out.println();
}
}
}

0 0
原创粉丝点击