zoukankan      html  css  js  c++  java
  • 【算法】选择排序

    什么是选择排序?

    选择排序就是从待排序的序列中找出最小(大)元素的数据,放到首位,然后再从待排序的序列中找到最小(大)的元素排到已经排序序列的后面,依次类推,知道所有待排序序列全都排序好。

    算法

    public class SelectionSort {
    
        public static void main(String[] args) {
            int[] arr = new int[]{1, 8,3,6,5,4,6,1,0};
    
            for (int i = 0; i < arr.length - 1; i++) {
                int minIndex = i;
                for (int j = i + 1; j < arr.length ; j++) {
                    minIndex = arr[j] < arr[i]? j:minIndex;
                }
    
                // 交换最小数和arr[i]
                int temp = arr[minIndex];
                arr[minIndex] = arr[i];
                arr[i] = temp;
            }
    
            System.out.println(Arrays.toString(arr));
        }
    }
    
    

    Tips:
    遍历数组,每次找出最小数的下标,然后把下标和当前排序数交换

  • 相关阅读:
    LaTeX 超链接
    剑指offer2 数组
    LaTeX 插入源代码
    RGB
    linux 程序在后台运行
    Linux Vim编辑与退出
    复杂度估计
    剑指offer 2 loading...
    剑指offer2 整数
    剑指offer2 字符串
  • 原文地址:https://www.cnblogs.com/amberbar/p/15704994.html
Copyright © 2011-2022 走看看