12.24~12.29学习笔记

1. 排序算法的逻辑算法:
https://blog.csdn.net/qq_34374664/article/details/79545940

O(1)<O(logn)<O(n)<O(nlogn)<O(n^2)<O(n^3)<O(2^n)<O(n!)<O(n^n)

冒泡排序原理(稳定): 一次比较两个相邻的元素,如果顺序是错误的,就交换,以此这样下去,直到没有相邻的元素进行比较,即序列排序成功.最有O(n), 最坏O(n^2)

选择排序原理(不稳定):
快排是一个分治算法,先不断地递归对数组进行切分,小数组有序后,整个数组就有序了.最优O(nlogn), 最坏O(n^2)

归并排序原理(稳定):
先对小数组进行序列排序,再归并使整个数组有序,最优O(nlogn),最坏O(nlogn)

插入排序原理(稳定):
采用in-place排序,通过构建有序序列,对于未排序的数据,在已排序序列中从后往前扫描,找到相应的位置插入.最优O(n),最坏O(n^2)

猜你喜欢

转载自blog.csdn.net/liugaigai427/article/details/85594185