选择排序


@Author:云都小生(Cloudking)


概述



选择排序也是一种简单直观的算法,效率比冒泡更高一丢丢,选择排序也是比较元素大小进行排序的算法之一。

这里写图片描述


算法


import java.util.Arrays;

public class SelectSort {

    public static void main(String[] args) {
        int[] nums = {4,1,5,123,12,21,3};
        nums = selectSort(nums);
        System.out.println(Arrays.toString(nums));
    }

    public static int[] selectSort(int[] nums)
    {
        int min;    //每次存放最小值
        int index;  //存放最小值的下标
        int temp;   //临时变量

        for(int i = 0;i < nums.length;i++)
        {
            min = nums[i];
            index = i;
            for(int j = i+1;j < nums.length;j++)
            {
                if(nums[j] < min)
                {
                    min = nums[j];
                    index = j;
                }
            }

            temp = nums[i];
            nums[i] = min;
            nums[index] = temp;
        }

        return nums;
    }
}

这个算法并没有太大的难度,只要冒泡排序能懂,这个都能懂。

第一次找到整个数列的最小值,然后放到第一位;

第二次从第二个位置开始,找到整个数列的最小值,然后放到第二位

···

这里写图片描述

2017/12/17 12:00:31 @Author:云都小生

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值