Java 冒泡排序

来源:互联网 发布:广西网络广播电视台 tv 编辑:程序博客网 时间:2024/06/05 21:12

冒泡排序:原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,这样一趟过去后,最大或最小的数字被交换到了最后一位,然后再从头开始进行两两比较交换,直到倒数第二位时结束,其余类似看例子例子为从小到大排序。

package com.vgbh;public class BubbleSorting {    private static int n = 10;//数组长度    private static int[] arr = new int[n];//数组    private static int count = 0;//执行次数    static PublicOut pc= null;//定义外部对象    public static void main(String[] args){        pc = new PublicOut();        pc.data(arr, n);        BubbleSorting bs = new BubbleSorting();        bs.bubble(arr);    }    /*     * 原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,     * 这样一趟过去后,最大或最小的数字被交换到了最后一位,     * 然后再从头开始进行两两比较交换,直到倒数第二位时结束,     * 其余类似看例子例子为从小到大排序,     */    public void bubble(int[] arr){        System.out.println("冒泡排序之后:");        for(int x=0;x<n;++x){            for (int y=0;y<n;++y) {                if(y+1 == arr.length) break;                if(arr[y] > arr[y+1]) {                    pc.change(arr,y,y+1);//数据转换                    count++;                    //pc.prin(arr,n);                    //System.out.println("zzzzzzz"+arr[x] +"     " +arr[x+1]);                }            }        }        pc.prin(arr,n);        System.out.println("共执行"+ count +"次");    }}

代码中有些测试的代码请忽略,有问题可以联系我的邮箱。