【算法基础总结】

【算法基础总结】,第1张

【算法基础总结】

算法基本知识铺垫十大排序一图总览十大排序中的稳定排序十大排序中的非稳定排序十大排序详解

算法基本知识铺垫

什么是稳定排序、原地排序、时间复杂度、空间复杂度,我这里先简单解释一下:

1、稳定排序:如果 a 原本在 b 的前面,且 a == b,排序之后 a 仍然在 b 的前面,则为稳定排序。

2、非稳定排序:如果 a 原本在 b 的前面,且 a == b,排序之后 a 可能不在 b 的前面,则为非稳定排序。

3、原地排序:原地排序就是指在排序过程中不申请多余的存储空间,只利用原来存储待排数据的存储空间进行比较和交换的数据排序。

4、非原地排序:需要利用额外的数组来辅助排序。

5、时间复杂度:一个算法执行所消耗的时间。

6、空间复杂度:运行完一个算法所需的内存大小

十大排序一图总览

十大排序中的稳定排序

冒泡排序(bubble sort) — O(n2)
插入排序 (insertion sort)— O(n2)
归并排序 (merge sort)— O(n log n)

十大排序中的非稳定排序

选择排序 (selection sort)— O(n2)
希尔排序 (shell sort)— O(n log n)
堆排序 (heapsort)— O(n log n)
快速排序 (quicksort)— O(n log n)

面试考察中一般问快排,选择,希尔,堆这几种非稳定排序

十大排序详解
    十大经典排序详解_冒泡排序十大经典排序详解_选择排序十大经典排序详解_插入排序十大经典排序详解_快速排序十大经典排序详解_希尔排序十大经典排序详解_归并排序十大经典排序详解_堆排序十大经典排序详解_计数排序十大经典排序详解_桶排序十大经典排序详解_基数排序

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5710285.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存