美文网首页
交换排序--选择排序

交换排序--选择排序

作者: iarchitect | 来源:发表于2018-09-06 12:16 被阅读0次

算法原理

每一次从待排序的数据元素中选出最小或最大的一个元素,存放到序列的起始位置,直到全部待排序的数据元素排完。

代码实现

import java.util.Arrays;

public class SelectionSort {

    public static void main(String[] args) {

        Integer[] unsortedArray = {1, 2, 3, 5, 4, 6, 9, 8, 7, 10};

        int minIndex = 0;
        int temp = 0;

        for (int i = 0; i < unsortedArray.length - 1; i++) {
            minIndex = i;//无序区最小数据数组下标
            for (int j = i + 1; j < unsortedArray.length; j++) {

                if (unsortedArray[j] < unsortedArray[minIndex]) {
                    minIndex = j;
                }
            }
            //将最小元素放到本次循环的前端
            temp = unsortedArray[minIndex];
            unsortedArray[minIndex] = unsortedArray[i];
            unsortedArray[i] = temp;
        }
        
        System.out.println(Arrays.toString(unsortedArray));
    }
}

运行结果

image.png

相关文章

  • 排序

    稳定排序 不稳定排序 交换排序 选择排序

  • 排序

    Haskell描述 插入排序 交换排序 选择排序

  • 给自己备份的排序代码

    交换排序 冒泡排序 快速排序 插入排序 直接插入排序 希尔排序 选择排序 简单选择排序 堆排序

  • Java 常见的 8 种排序算法(内排序)

    排序分类 内部排序 插入排序:直接插入排序、希尔排序 交换排序:冒泡排序、快速排序 选择排序:直接选择排序、堆排序...

  • 算法与数据结构知识汇总(八、常见的八大排序算法)

    排序技术有:插入排序(直接插入排序、希尔排序)、选择排序(简单选择排序、堆排序)、交换排序(冒泡排序、快速排序)、...

  • 数据结构05-排序和查找

    1:排序算法分为如下5类: 插入排序:普通插入排序,shell排序等; 选择排序:普通选择排序,堆排序; 交换排序...

  • 排序算法

    排序算法 非线性时间比较类排序 交换排序 冒泡排序 快速排序 插入排序 插入排序 希尔排序 选择排序 简单选择排序...

  • 程序员必须掌握的8大排序算法

    分类:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)...

  • 排序

    分类: 1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序...

  • Java常用排序算法/程序员必须掌握的8大排序算法

    分类:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)...

网友评论

      本文标题:交换排序--选择排序

      本文链接:https://www.haomeiwen.com/subject/fdztgftx.html