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

    先简述选择排序,然后上代码

      进行选择排序就是将所有的元素扫描一遍,从中挑选(或者说是选择,这正是这个排序名字的由来)最小的一个元素,将这个最小的元素与最左边的元素交换位置 ,现在最左边的元素就是有序的了,不需要再交换位置了。

      再次扫描元素队列时,就从第二个位置开始,还是寻找最小的元素,然后与第二个位置交换位置。

      这个过程一直持续到所有的元素都排定。

    选择排序类:

    package com.dxx.order;
    
    public class SelectSort {
    private int arrs[];
    
        public SelectSort(int[] arrs) {
            super();
            this.arrs = arrs;
        }
        
        public void sortArrs(){
            int len = arrs.length;
            int temp = 0;
            //进行len-1次循环,每次循环都将在未排序的元素中找出最小的放在已排序的末端
            for(int i=0;i<len-1;i++){
                temp = i;
                //进行len-1-i次循环,找到未排序元素中最小的元素的下标;
                for(int j=i;j<len-1;j++){
                    temp = arrs[j+1]>arrs[temp] ?temp:j+1;
                }
                if(temp != i){
                    //将最小的元素与下标为i的元素交换位置
                    int change;
                    change = arrs[temp];
                    arrs[temp] = arrs[i];
                    arrs[i] = change;
                }
            }
        }
        
        public void printArrs(){
            for(int i :arrs){
                System.out.print(i + "   ");
            }
            System.out.println();
        }
    }

    主程序类:

    package com.dxx.order;
    
    public class MainTest {
    
        public static void main(String[] args) {
            int arrs[] = {1,3,2,5,4,8,6,7};
            SelectSort selectSort = new SelectSort(arrs);
            selectSort.printArrs();
            selectSort.sortArrs();
            selectSort.printArrs();
    
        }
    
    }
  • 相关阅读:
    Servlet编程实例1
    Servlet
    JDBC之代码优化
    JDBC数据库编程
    数据库常识
    数据库基本操作
    STM32CUBEMX入门学习笔记3:HAL库以及STM32CUBE相关资料
    QT入门学习笔记2:QT例程
    爬虫制作入门学习笔记2:[转]python爬虫实例项目大全
    中移物联网onenet入门学习笔记2:中移物联的通信格式
  • 原文地址:https://www.cnblogs.com/dxx-blogs/p/4465118.html
Copyright © 2011-2022 走看看