Sort List系列
在严老师的数据结构书上学习了各种排序算法,比如插入排序,选择排序,堆排序,快速排序,归并排序等,不过书上代码的应用场景均是底层结构是顺序存储的情况,即数组。
今天总结下对于单链表,常用的排序算法能否使用。由于希尔排序、堆排序、计数排序都要求随机访问,而单链表只能顺序访问,故这 3 种是不能用于单向链表排序,其他常用的排序方法用于单链表时间复杂度和空间复杂度略有不同。下图是针对单链表的常用排序算法图:
Insertion Sort List
Sort a linked list using insertion sort.