zoukankan      html  css  js  c++  java
  • 排序算法 之 直接选择排序

    上一篇我们记录了冒泡排序算法的实现,这次我们来看直接选择排序是如何实现的。

    1.直接选择排序:

    基本思想:

    直接选择排序也是对被排序的序列进行n-1次遍历,与冒泡排序不同的是,它并不对本次遍历序列内的元素两两进行比较并根据比较的结果来决定是否交换,而是找出本次遍历的序列内元素的最小值,并插入本次遍历的开始位置,直至遍历完成序列有序,直接选择排序算法的时间复杂度为O(n²);;

    代码实现:

    /// <summary>
    /// 直接选择排序
    /// </summary>
    /// <param name="intArray"></param>
    /// <param name="length"></param>
    public static void SelectSort(int[] intArray, int length)
    {
        int i, j, minIndex, temp;
        for (i = 0; i < length-1; i++)
        {
            minIndex=i;
            for (j = i + 1; j < length; j++)
            {
                if (intArray[minIndex] > intArray[j])
                    minIndex = j;
            }
    
            if (i != minIndex) 
            {
                temp = intArray[i];
                intArray[i] = intArray[minIndex];
                intArray[minIndex] = temp;
            }
        }
    }

    以上就是直接选择排序的内容。

  • 相关阅读:
    MySQL 练习题
    MySQL 增删查改
    HTML显示与隐藏
    360布局
    div布局
    HTML练习2
    HTML练习

    if语句的用法及其案例
    输入输出,数据类型与运算符
  • 原文地址:https://www.cnblogs.com/liukemng/p/3715944.html
Copyright © 2011-2022 走看看