(学习笔记)排序算法

Posted 曾胖神父

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(学习笔记)排序算法相关的知识,希望对你有一定的参考价值。

排序算法介绍

目前的排序算法包括基数排序,计数排序,桶排序,快速排序,归并排序,堆排序,冒泡排序,选择排序,插入排序,希尔排序。其中复杂程度为o(N)的排序算法为基数排序,计数排序,桶排序。复杂程度为O(NlogN)的算法为快速排序,归并排序,堆排序。复杂程度为O(N2)的排序算法为冒泡排序,选择排序,插入排序,希尔排序。

排序算法分类

排序算法可以分为两大类:比较类排序,非比较类排序
**比较类排序:**比较元素之间的相对次序进行排序,算法的时间复杂度最优是O(NlogN),因此也被称为非线性时间比较类排序。
非比较类排序:不通过比较来决定元素的相对次序,最优时间复杂度是O(N),因此也被称为线性时间非比较类排序
比较排序包括交换排序(冒泡排序,快速排序),插入排序(包括简单插入排序,希尔排序),选择排序(简单选择排序,堆排序),归并排序(二路归并排序,多路归并排序)。

以上是关于(学习笔记)排序算法的主要内容,如果未能解决你的问题,请参考以下文章

(学习笔记)排序算法

数据结构与算法笔记 排序算法基础

基础算法系列之排序算法-3. 直接插入排序

考研数据结构笔记—堆排序

数据结构与算法有向图的拓扑排序

数据结构与算法学习笔记(10) 排序