选择排序程序

package com.cos.lession08.demo4;

import java.util.Arrays;

/**
 * 选择排序
 * @author cos
 *
 */
public class XuanZeDemo {
    public static void main(String[] args) {
        int[] a = { 65, 54, 87, 23, 42, 77, 55, 15, 88, 99 };
        //比较的轮数是数组长度-1
        for (int i = 0; i < a.length-1; i++) {
            //定义变量index来记录最小值的下标
            int index=i;
            /*
             * 每轮比较时,都是i下标的值开始,和他后一个值比较,所以j的初始值是i+1开始
             * ,并且每轮比较的时候,都会比较最后一位的数据,所以条件不需要修改<xx.length即可
             */
            for (int j = i+1; j < a.length; j++) {
                //判断,记录下来的最小和j下标的值比较
                //最小值比a[j]要大
                if (a[index]>a[j]) {
                    //重新记录最小值的下标位置
                    index=j;
                }
            }
            //内存循环结束,index所记录的就是每轮找到的最小的值的下标
            //数据和i的下标位置进行交换
            int temp = a[i];
            a[i]=a[index];
            a[index]=temp;
        }
        
        //排序完成
        System.out.println(Arrays.toString(a));
        
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值