美文网首页
排序算法:冒泡排序

排序算法:冒泡排序

作者: 柠檬师傅 | 来源:发表于2017-03-20 15:03 被阅读0次
    冒泡排序简单说明及示例代码

    冒泡排序是最简单的排序之一了,其思想就是通过与相邻元素的比较和交换来把小的数交换到最前面。 这个过程类似于水泡向上升一样,所以也叫冒泡排序。举个列子对4,3,7,6,4这个无序序列进行冒泡排序。首先从后向前冒泡,4和6比较,把4交换到前面,序列变成4,3,7,4,6。同理4和8交换,变成4,3,4,7,6,3和4无需交换。4和3交换,变成3,4,4,7,6,这样一次冒泡就完了,把最小的数3排到最前面了。对剩下的序列依次冒泡就会得到一个有序序列。

    public class BubbleSort {
    
        public static int[] bubbleSort(int[] arr){
            if(arr==null||arr.length==0){
                return null;
            }
            for(int i=arr.length-1;i>=0;i--){
                for(int c=arr.length-1;c>0;c--){
                    if(arr[c]<arr[c-1]){
                        int current =arr[c];
                        arr[c]=arr[c-1];
                        arr[c-1]=current;
                    }
                }
            }
            return arr;
        }
        
        public static void main(String[] args) {
        int[] arr = new int[]{1,4,2,5,2,3,6,45,234,234,5435,546546,1,2,3,4,5};
        int[] bubbleSort = bubbleSort(arr);
        System.out.print(Arrays.toString(bubbleSort));
        }
    }
    
    

    时间复杂度为O(n^2)

    相关文章

      网友评论

          本文标题:排序算法:冒泡排序

          本文链接:https://www.haomeiwen.com/subject/yutinttx.html