zoukankan      html  css  js  c++  java
  • 2.选择法排序

    选择排序(Selection Sort)

    选择排序(Selection-sort)是一种简单直观的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 

    2.1 算法描述

    n个记录的直接选择排序可经过n-1趟直接选择排序得到有序结果。具体算法描述如下:

    • 初始状态:无序区为R[1..n],有序区为空;
    • 第i趟排序(i=1,2,3…n-1)开始时,当前有序区和无序区分别为R[1..i-1]和R(i..n)。该趟排序从当前无序区中-选出关键字最小的记录 R[k],将它与无序区的第1个记录R交换,使R[1..i]和R[i+1..n)分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区;
    • n-1趟结束,数组有序化了。

    2.2 动图演示

      

    代码实现:

        public static void main(String[] args) {
            int[] array = {3,5,14,23,4,1,6,7,144,44,22};
            array=SelectionSort(array);
            show(array);
        }    
    
    
    public static int[] SelectionSort(int[] array){
            int index,temp;
            for(int i=0;i<array.length-1;i++){
                index=i;
                for(int j=i+1;j<array.length;j++){
                    if(array[index]>array[j]){
                        index=j;
                    }
                }
                temp = array[i];
                array[i]=array[index];
                array[index]=temp;
            }
            return  array;
        }
    
    
        public static void show(int[] array){
            for(int i=0;i<array.length;i++){
                System.out.print(array[i]+"->");
            }
        }
  • 相关阅读:
    Java Web 网络留言板2 JDBC数据源 (连接池技术)
    Java Web 网络留言板3 CommonsDbUtils
    Java Web ConnectionPool (连接池技术)
    Java Web 网络留言板
    Java Web JDBC数据源
    Java Web CommonsUtils (数据库连接方法)
    Servlet 起源
    Hibernate EntityManager
    Hibernate Annotation (Hibernate 注解)
    wpf控件设计时支持(1)
  • 原文地址:https://www.cnblogs.com/Qiansion/p/10250966.html
Copyright © 2011-2022 走看看