排序O(n*n) O(n log2 n) O(n + max)

O(n*n)

冒泡排序:比较相邻的元素,如果第一个比第二个大,就交换他们,对每一对相邻的元素做同样的工作,从开始第一对到结尾最后一对,这会让最后一位是最大的数,对所有元素重复以上步骤,除了最后一个,知道没有任何一个数字比较

O(n log2 n)

快速排序:以一个数字为基准,重新排序数列,比基准值小的放左边,大的放右边,然后对左半边和右半边重复以上操作,直到只有一个数字为止

O(n + max)

基数排序:根据键值的每位数字来分配桶,将所有待比较数值(正整数)统一为同样的数位长度,数位较短的数前面补零。然后,从最低位开始,依次进行一次排序。这样从最低位排序一直到最高位排序完成以后,数列就变成一个有序序列。

基数排序 动图演示 链接:https://www.runoob.com/w3cnote/radix-sort.html

你可能感兴趣的:(排序O(n*n) O(n log2 n) O(n + max))