冒泡排序 选择排序

 1.冒泡排序

冒泡排序:选择第第一位于第二位进行比较,如果大于后面的数字则与后面的数字进行交换,交换后在以第二位与第三位进行比较,大了则换位(以下的上同)。

如果不大于后面的数则继续向后进行这时选择第二位和第三为进行比较,比后面数字大就换位,小则继续向后进行。

(两两判断,两两交换)

//冒泡排序
public class bubbling {
    public static void main(String[]args){
        int array []=new int []{2,5,8,3,1,4,6,7,9,};
        
         for(int i=0;i<array.length;i++){
            //array.length-1是两数进行交换捆绑为一,
            //在-i是减去序列中所排好的最大的一个数
            for(int j=0;j<array.length-1-i;j++){
                if(array[j]>array[j+1]){
                    /*判断前后数字大小,
                      判断后进行位置交换
                    */
                    int num=array[j];
                    array[j]=array[j+1];
                    array[j+1]=num;
                    }
                }
            }
        System.out.println("排序完后为:");
        //重新排完序后进行遍历
        for(int i=0;i<array.length;i++)
            System.out.println(array[i]+"");
     }
}


2.选择排序

选择第一个数与后面的数一个一个进行比较,如果所选的数大于后面的某个数,则选择这个小的数继续进行比较,再有比选择的数小的数在进行选择,直至对比结束后所选中最小的数与初始选择的数进行交换位置。而第二次选择第二个数进行与后面做对比,与上次方法相同。后面的方法依然如此制止排完序后。最后遍历出所排好的数列。

//插入排序
public class select {
    public static void main(String[] args) {
        int array[] = new int[]{2, 5, 7, 4, 1, 9, 3, 6, 8};
        for (int i = 0; i < array.length; i++) {
            int num = i;
            //选择第一个数
            for (int j = i; j < array.length; j++) {
               if (array[j] < array[num]) {
            //用第一个选择的数与后面的数进行比较
                    num = j;
                }
            }
            int temp = array[num];
            array[num]=array[i];
            array[i]=temp;
            //交换位置
        }
        for(int i=0;i<array.length;i++){
            System.out.println(array[i]);
            //排完序后进行遍历
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值