面试常考——快速理解【冒泡排序】

1.你想象着冒泡就是小气泡从底部冒出到顶部;然后又有小气泡从底部到顶部;循环多次。

冒泡排序就是每一遍循环都找出最大数放到后面

2.代码实现

import java.util.Arrays;

public class Sort {

    public static void bubbleSort(int nums[]) {
        int temp;
        for (int i = 0; i < nums.length; i++) {//总共需要冒泡的次数
            for (int j = 0; j < nums.length-1; j++) {//一次冒泡的过程(同时,考虑到要用到nums[j + 1],所以为了下标不越界,j < nums.length-1)
                if (nums[j] > nums[j + 1]) {//得到更大的数
                    temp = nums[j];
                    nums[j] = nums[j + 1];
                    nums[j + 1] = temp;
                }
            }
        }
    }

    public static void main(String[] args) {
        int a[] = new int[] { 55, 234, 567, 12, 76, 34, 21, 43, 65, 86, 54, 67 };
        bubbleSort(a);
        System.out.println(Arrays.toString(a));
    }
}

结果输出:[12, 21, 34, 43, 54, 55, 65, 67, 76, 86, 234, 567]

 

posted @ 2016-11-14 20:39  达哥的博客  阅读(1269)  评论(0编辑  收藏  举报