美文网首页
选择排序--简单选择排序

选择排序--简单选择排序

作者: Caesar少校 | 来源:发表于2016-11-30 10:45 被阅读5次

    基本思想:第 i 趟排序在待排序序列r[i]~rn中选取关键码最小的记录,并和第 i 个记录交换作为有序序列的第 i 个记录。

    //简单选择排序算法
    void SelectSort(int r[], int n)         //用0号单元作为交换操作的暂存单元
    {
        for (int i = 0; i < n; i++)         //对n个记录进行n-1趟简单选择排序
        {
            int index = i;
            for (int j = i + 1; j <= n; j++)//在无序区中选取最小记录
                if (r[j] < r[index])
                    index = j;
            if (index != i)
            {
                int temp = r[i];
                r[i] = r[index];
                r[index] = temp;
            }
        }
    }
    

    时间复杂度为O(n^2)
    简单选择排序是一种不稳定的排序方式

    相关文章

      网友评论

          本文标题:选择排序--简单选择排序

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