首页 > 编程语言 > 详细

排序算法

时间:2021-05-19 23:38:42      阅读:23      评论:0      收藏:0      [点我收藏+]

排序算法

冒泡排序算法

/// <summary>
/// 冒泡排序
/// </summary>
/// <param name="arr"></param>
public void BubbleSort()
{
    int temp;
    for (int i = upper; i >= 1; i--)
    {
        for (int j = 0; j <= i - 1; j++)
        {
            if (arr[j] > arr[j + 1])
            {
                temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
}

 

选择排序算法

/// <summary>
/// 选择排序算法
/// </summary>
public void SelectionSort()
{
    int min, temp;
    for (int i = 0; i <= upper; i++)
    {
        min = i;
        for (int j = i + 1; j <= upper; j++)
        {
            if (arr[min] > arr[j])
            {
                min = j;
            }
        }

        if (min != i)
        {
            temp = arr[i];
            arr[i] = arr[min];
            arr[min] = temp;
        }
    }
}

 

插入排序算法

/// <summary>
/// 插入排序
/// </summary>
public void InsertionSort()
{
    int inner, temp;
    for (int outer = 1; outer <= upper; outer++)
    {
        temp = arr[outer];
        inner = outer;
        while (inner > 0 && arr[inner - 1] >= temp)
        {
            arr[inner] = arr[inner - 1];
            inner -= 1;
        }
        arr[inner] = temp;
    }
}

效率比较

技术分享图片

 

 总结,插入排序最慢,它的换位置次数最多,其次是冒泡排序,最快的是选择排序

排序算法

原文:https://www.cnblogs.com/Zyj12/p/14787323.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!