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);
        }

    结果:

    突破昨天的自己
  • 相关阅读:
    使用Quartz2D实现时钟动画(二)
    使用Quartz2D实现时钟动画(一)
    排序算法的基本思想和OC代码实现
    OC命名规范及代码注释规范
    OC中Foundation框架的基本对象之数字对象
    iOS并排按钮点击联动效果封装
    iOS图片处理
    个人面试总结
    Objective和Swift,你该选择哪个
    网络开发中socket简介
  • 原文地址:https://www.cnblogs.com/ya-qiang/p/8902272.html
Copyright © 2011-2022 走看看