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

    选择排序:选择排序是现将当前第一个索引记为最小值的索引位置,并将其 与此索引后面的元素比较得到最小值的索引,最后比较跟前面的最小值索引是否相同,不同交换两个索引

    的值

    实现过程:

    实现代码:

        //交换元素函数
        public void swap(int[] arrs, int i, int j) {
            int temp = arrs[i];
            arrs[i] = arrs[j];
            arrs[j] = temp;
        }
    public int[] select_Sort(int[] arrs) {
            System.out.println("排序前的元素为:");
            for (int num : arrs) {
                System.out.print(num+" ");
            }
            for(int i = 0; i < arrs.length -1; i++) {
                //将当前第一个元素记为最小值,记录最小值的索引
                int min = i;
                for(int j = i+1; j < arrs.length; j++) {
                    //如果当前索引元素值大于下一个索引元素值,最小值索引记为j
                    if(arrs[j] < arrs[min]) {
                        min = j;
                    }
                }

            System.out.println();
            //打印每一轮的排序结果
            System.out.println("第" + (i+1) +"轮排序:");
            for (int num : arrs) {
             System.out.print(num + " ");
            }

    //如果最小值索引改变了,不等于i,交换元素之间的值
                if(min != i) {
                    swap(arrs,i,min);
                }
            }
            System.out.println();
            System.out.println("排序后的元素为:");
            for (int num : arrs) {
                System.out.print(num+" ");
            }
            return arrs;
        }
        public static void main(String[] args) {
            Sort sort = new Sort();
            int[] arrs = {4,2,6,8,1,3,5};
            sort.select_Sort(arrs);
        }

    结果:

    突破昨天的自己
  • 相关阅读:
    MySQL根据逗号将一行数据拆成多行数据
    pyhon实现excel的转置
    python批量加入数据库
    jieba词频统计
    python 求顾客相邻两次购买周期
    mysql求取最后两次价格上涨趋势
    mysql求每一个顾客购买商品的相邻时间间隔
    利用Python从一个数据库中查询结果插入到另一个数据库中
    电商项目数据分析
    线程的两种调用方式
  • 原文地址:https://www.cnblogs.com/ya-qiang/p/8902272.html
Copyright © 2011-2022 走看看