zoukankan      html  css  js  c++  java
  • 选择排序法-java详解案例

    /**  * 功能:选择排序法

     * 思想:第一次从R[0]-R[N-1]中选取最小值,与R[0]交换,第二次从R[1]-R[N-1]中选取最小值,与R[1]交换,

     * 第三次从R[2]-R[N-1]中选取最小值,与R[2]交换...第i次从R[i]-R[N-1]中选取最小值,与R[i-1]交换,

     * 第n-1次从R[n-2]-R[N-1]中选取最小值,与R[n-2]交换,总共通过n-1次,得到一个按排序码从小到大排列的

     * 有序序列。

     * 作者:徐守威

     */

    package com.xushouwei;

    public class T5 {

     /**  

    * @param args  

    */  

    public static void main(String[] args)

    {   

      // TODO Auto-generated method stub   

      int arr1[]={1,6,0,-1,9,-100,90,10,15,-10};  

       //开始排序,创建一个Select类   

      Select select=new Select();   

      select.sort(arr1);      

      //输出最后结果  

       for(int i=0;i<arr1.length;i++)   

      {    

        System.out.print(arr1[i]+" ");  

       }

      }

    }

    //定义一个Select类

    class Select

    {  

      //选择排序  

      public void sort(int arr[])  

      {   

        //定义一个临时变量来存放交换的值   

        int temp=0;  

          for(int j=0;j<arr.length-1;j++)  

         {   

         //假设第一个数是最小的    

        int min=arr[j];    

        //定义最小下标    

           int minIndex=j;   

           for(int k=j+1;k<arr.length;k++)   

          {     

                if(min>arr[k])     

          {      

          //修改     

          min=arr[k];     

          minIndex=k;    

         }    

      }    

      //但退出内循环后就找到这次的最小值  

       temp=arr[j];  

       arr[j]=arr[minIndex];   

      arr[minIndex]=temp;   

      }  

      }

      }

  • 相关阅读:
    检查点(Checkpoint)过程如何处理未提交的事务
    SQL Server代理(4/12):配置数据库邮件
    SQL Server代理(3/12):代理警报和操作员
    hash_multimap
    hash_map
    hash_multiset
    hash_set
    hash 函数
    pair
    multimap
  • 原文地址:https://www.cnblogs.com/Jasxu/p/Select_sort.html
Copyright © 2011-2022 走看看