美文网首页
八大经典排序算法总结

八大经典排序算法总结

作者: 蜗牛滴追逐 | 来源:发表于2018-09-20 11:20 被阅读0次

    1.算法排序的时间复杂度:
    时间复杂度o(n^2)
    冒泡排序,选择排序,插入排序
    时间复杂度o(n*logn)
    归并排序,快速排序,堆栈排序,希尔排序
    时间复杂度o(n)
    计数排序和基数排序

    2.算法排序的空间复杂度
    o(1)
    冒泡排序,选择排序,插入排序,堆排序,希尔排序
    o(nlogn)
    快速排序
    o(N)
    归并排序
    o(M)
    计数排序和基数排序

    3.稳定性:相同值的元素排序前和排序后值保持不变
    稳定的排序算法:冒泡排序,插入排序,归并排序,计数排序,基数排序,
    不稳定的排序算法:选择排序,快速排序,堆排序,希尔排序

    选择排序不稳定例子.png

    选择排序原因:在选择最小值和位置为0的数交换的时候产生

    快速排序不稳定例子.png

    快速排序原因:在随机选择相同值中间的数的,两边的相同值的不不是被划分到选择值得左边就是选择值的右边

    堆排序不稳定例子.png

    堆排序原因:在每次建立大根堆后,堆顶元素会换到最后的位置上去

    希尔排序不稳定例子.png

    希尔排序:步长为2时,第二个1跳两部,造成了不稳定

    相关文章

      网友评论

          本文标题:八大经典排序算法总结

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