冒泡排序

public class BubbleSortTest {
    public static void main(String[] args) {

        int[] arrays = {1,5,3,4,7,8,6,12};
        int[] ints = bubbleSort(arrays);
        System.out.println(Arrays.toString(ints));
    }
    public static int[] bubbleSort(int[] array){
        int temp = 0;//临时变量temp
        boolean flag = false;//通过flag标识为减少没有意义的比较
        /*外层循环判断两两要比较多少次*/
        for (int i = 0; i < array.length; i++) {
            /*内层循环,比较判断两个数,如果第一个数比第二个数大,则交换两个数的位置*/
            for (int j = 0; j < array.length-1-i; j++) {
                if (array[j]>array[j+1]){
                    temp = array[j];
                    array[j]=array[j+1];
                    array[j+1]=temp;
                    flag = true;
                }
            }
            if (flag==false){
                break;
            }
        }
        return array;
    }
}

运算结果:

posted @ 2021-05-26 19:21  Henry`  阅读(46)  评论(0)    收藏  举报