zoukankan      html  css  js  c++  java
  • 排序算法之选择排序的思想以及Java实现

    1 基本思想
    选择排序的思想是,每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。

    2,算法的实现(Java)

    package Algorithm;
    
    public class SelectSort {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            int[] data = new int[] {11,10,55,78,100,111,45,56,79,90,345,1000};
            System.out.println("排序之前:");
            out_put.output(data);
            System.out.println();
            System.out.println("排序之后:");
            SelectSort.select_sort(data);
            out_put.output(data);
        }
    
        public static void select_sort(int[] arr){
            if(arr == null || arr.length < 2){
                return;
            }   
            int index;//定义下标
            for(int i=0;i<arr.length;i++){
                index = i;//初始下标为i
                for(int j=i+1;j<arr.length;j++){
                    if(arr[j]<arr[index]){
                        index = j;
                    }
                }
                if(index != i){
                    int temp = arr[index];
                    arr[index] = arr[i];
                    arr[i] = temp;
                }
            }
        }
    }

    得到的结果为:
    这里写图片描述

    3 性能分析
    选择排序的时间复杂度为O(n^2),由于每次选择仅考虑某一位置上的数据情况,可能会破坏之前数据的相对位置,因此它是一种不稳定的排序方法。

  • 相关阅读:
    AES加密解密
    水电缴费管理系统 需求分析与设计
    ORACLE SQL语句练习
    GUID全局唯一标识符(转)
    java 基础--多线程基础练习
    java基础List集合练习
    I/O输入输出流的练习
    java基础--集合练习
    java基础异常捕获处理
    java基础 接口练习
  • 原文地址:https://www.cnblogs.com/cmderq/p/9130853.html
Copyright © 2011-2022 走看看