java冒泡排序

什么叫冒泡排序:
    就是一组无序的数,需要按从小到大或者从大到小排序。
 
比如:有9 4 5 6 8 3 2 7 10 1这几个数
 
开始:9 4 5 6 8 3 2 7 10 1  (下标从左到右分别是0~9)按照上面的程序进行对比交换
第一次:4 9 5 6 8 3 2 7 10 1 
第二次:4 9 5 6 8 3 2 7 10 1 
。。。:(没有交换)
第五次:3 9 5 6 8 4 2 7 10 1 
第六次:2 9 5 6 8 3 4 7 10 1 
。。。:(没有交换)
第十次:1 9 5 6 8 3 4 7 10 
 
可以看出,原来较小的数是在前面的,经过一轮的交换后放到后面了。
 

10个元素的数组。
比9趟就排好序了。因为每一趟出一个值。
每趟中比的次数,越来越少。每趟都比上一趟少一次。
冒泡语法:双层循环来实现,外层趟数,里层次数。
趟数 = n-1; n是10
次数 = n - 趟数

下面我们具体实例来进行演示:
                int a[]=new int[]{4,2,19,8,23,1,9};//定义一个数组
        for(int i=1;i<a.length;i++)
        {
            for(int j=1;j<a.length-i+1;j++)
            {
                if(a[j]<a[j-1])    //判断两个值的大小
                {
                    int b=0;   //定义一个中间变量
                    b=a[j];    //依次交换
                    a[j]=a[j-1];
                    a[j-1]=b;
                }
            }
        }
        for(int i=0;i<a.length;i++)
        {
            System.out.print(a[i]+"\t");
        }

 

posted @ 2016-12-20 16:29  Claricre  阅读(207)  评论(0编辑  收藏  举报