交换排序之冒泡排序(四)

冒泡排序(Bubble Sort),是一种 计算机科学领域的较简单的 排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。
代码实现:
package com.test.sort;

public class BubbleSort {

    /**
     * 交换排序之冒泡排序
     * @param args
     */
    public static void main(String[] args) {
        bubbleSort();//冒泡排序
    }
    
    /**
     * 冒泡排序
     * 思路:
     * 数组每两个元素比较,如果前者大于后者,交换位置否则不交换,直至最后一位。
     * 每一轮结束得到一个最大值,假设每次参与的元素个数为n,则得到的最大值放在索引为n-1位置。
     */
    public static void bubbleSort(){
        int [] a = new int[]{12,123,23,1,32,45,32,34,0,23,348,1,2,323};
        for (int i = 0; i < a.length-1; i++) {
            int min=0;
            for (int j = 0; j < a.length-1; j++) {
                if(a[j]>a[j+1]){
                    min = a[j+1];
                    a[j+1] = a[j];
                    a[j] = min;
                }
            }
        }
        
        for (int i = 0; i < a.length; i++) {
            if(i==a.length-1){
                System.out.print(a[i]);
            }else{
                System.out.print(a[i]+", ");
            }
        }
    }
    
}
 

猜你喜欢

转载自www.cnblogs.com/quyanhui/p/10256172.html