排序--冒泡

这个排序方法是所有算法中最为简单的方法:

  虽说简单,但是你的逻辑不对也是一样械部队的,所以我们就来分析一下它是怎么样的一个流程

  用一个简单的例子来分析师比较好的

    假设有一组人要你从高到底依次进行排序,好了,现在让第一个人从第一个比到最后一个(i=0;i<n-0-1;i++)

    {除了自己之外,所有的人都要进行比较,所以是n-1,其中n为总人数};

    现在第一次的比较已经比完了,

    然后第二次(;j<n-1-1;j++)

    第三次 ( ;j<n-2-1;j++)

    。。。。。。

    现在就可以得出规律:从第一个开始,他的比较条件就是:j<n-j-1;{ij为上一次的值 }

  结论出来了,现在就可以来写代码了

  

public class Test1 {

    public static void main(String[] args) {
        int a[]=new int[]{1,5,6,7,8,10,9,3,21,6,};
        int n=a.length;
        int tem;
        for(int i=0;i<n;i++){
            for(int j=0;j<n-i-1;j++){
                if(a[j]>a[j+1]){
                    tem=a[j];
                    a[j]=a[j+1];
                    a[j+1]=tem;
                }
            }
        }
        for(int i=0;i<n;i++){
            System.out.println(a[i]);
        }
    }

}

  

原文地址:https://www.cnblogs.com/yaobolove/p/5333645.html