美文网首页
选择排序算法及复杂度分析

选择排序算法及复杂度分析

作者: 30岁每天进步一点点 | 来源:发表于2019-02-24 11:08 被阅读0次

每次选择一个最小的数和第一个位置进行交换。需要注意的是每次循环只需选择出最小值的下标即可。

public void selectSort(int[] a) {
        for(int i=0;i<a.length;i++){
            int k=i;
            for(int j=i+1;j<a.length;j++){
                if(a[j]<a[k]){
                    k=j;
                }
            }
            if(k>i){
                int temp = a[i];
                a[i]=a[k];
                a[k]=temp;
            }
        }
    }

//稳定性:不稳定
最好、最差、平均时间复杂度均为:O(n^2)

相关文章

  • 算法-选择排序

    算 法:选择排序算法时间复杂度: 选择排序算法概述 选择排序伪代码 选择排序实现 选择排序算法概述 排序算法有许...

  • 数据结构与算法--排序

    常用的排序算法 如何分析一个“排序算法”? 排序算法的执行效率 最好情况、最坏情况、平均情况时间复杂度 时间复杂度...

  • 排序算法学习笔记

    插入排序 算法稳定、时间复杂度为n^2 冒泡排序 算法稳定,时间复杂度为n^2 选择排序 算法不稳定,时间复杂度为...

  • 选择排序算法及复杂度分析

    每次选择一个最小的数和第一个位置进行交换。需要注意的是每次循环只需选择出最小值的下标即可。 //稳定性:不稳定最好...

  • LeetCode-排序算法

    LeetCode-排序算法 时间复杂度 排序算法平均时间复杂度冒泡排序O(n2)选择排序O(n2)插入排序O(n2...

  • 算法一:选择排序之直接选择

    一、排序算法的衡量标准 时间复杂度:主要分析关键字的比较次数和记录的移动次数。 空间复杂度:分析排序算法中需要多少...

  • 简单介绍几种经典的排序算法

    排序算法的几个方面 排序算法的执行效率一般会从三个方面去分析排序算法的执行效率。最好时间复杂度,最坏时间复杂度和平...

  • 排序算法的 时间复杂度 和 空间复杂度

    常用的排序算法的时间复杂度和空间复杂度 排序法 最差时间分析 平均时间复杂度 稳定度 空间复杂度 冒泡排序 O...

  • 第4章 结构体

    1、排序 算法分析 用结构体存储,并进行排序 时间复杂度 Java 代码 2、成绩排序 算法分析 先对分数从小到大...

  • 排序算法详细代码实现

    算法分类 算法时间复杂度 选择排序 插入排序 C++实现 Python实现 冒泡排序 Python实现 归并排序 ...

网友评论

      本文标题:选择排序算法及复杂度分析

      本文链接:https://www.haomeiwen.com/subject/vypvyqtx.html