数据结构与算法Java篇

冒泡排序

2018-10-22  本文已影响0人  NetCedar

冒泡排序
    冒泡排序比较简单,每次比较相邻的元素,将较大的元素移动到后面,一次排序后,最大元素在最末尾
    实现用2层循环,外层控制循环次数,内层进行比较
    时间复杂的为O(n^2),是一个稳定的排序

/**
 * 冒泡排序
 */
public class BubbleSort {

    //冒泡排序两层循环
    public static void Sort(int [] array){
        //外出循环控制排序次数
        for (int i=0;i<array.length-1;i++){
            //内存循环对数组进行比较
            for (int j=0;j<array.length-i-1;j++){
                if (array[j]>array[j+1]) {
                    arraySwap(array,j,j+1);
                }
            }
        }
    }

    public static void arraySwap(int [] array,int i,int j){
        int temp=array[i];
        array[i]=array[j];
        array[j]=temp;
    }

    public static void main(String[] args) {
        int[] array = {6,3,8,2,9,1};
        Sort(array);
        for (int i:array){
            System.out.print(i+" ");
        }
    }
}

上一篇 下一篇

猜你喜欢

热点阅读