自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

數(shù)據(jù)結(jié)構(gòu)與算法:線性排序比較

開發(fā) 前端
計數(shù)排序只能用在數(shù)據(jù)范圍不大的場景中,如果數(shù)據(jù)范圍k比要排序的數(shù)據(jù)n大很多,就不適合用計數(shù)排序了。而且,計數(shù)排序只能給非負整數(shù)排序,如果要排序的數(shù)據(jù)是其他類型的,要將其在不改變相對大小的情況下,轉(zhuǎn)化為非負整數(shù)。

一、概述

三種時間復(fù)雜度是O(n)的線性排序算法:桶排序、計數(shù)排序、基數(shù)排序。

二、相似點

這三種排序算法都利用了桶的概念,但對桶的使用方法上有明顯差異:

  • 基數(shù)排序:根據(jù)鍵值的每位數(shù)字來分配桶;
  • 計數(shù)排序:每個桶只存儲單一鍵值;
  • 桶排序:每個桶存儲一定范圍的數(shù)值;

三、適用場景

桶排序比較適合用在外部排序中。所謂的外部排序就是數(shù)據(jù)存儲在外部磁盤中,數(shù)據(jù)量比較大,內(nèi)存有限,無法將數(shù)據(jù)全部加載到內(nèi)存中。

計數(shù)排序只能用在數(shù)據(jù)范圍不大的場景中,如果數(shù)據(jù)范圍k比要排序的數(shù)據(jù)n大很多,就不適合用計數(shù)排序了。而且,計數(shù)排序只能給非負整數(shù)排序,如果要排序的數(shù)據(jù)是其他類型的,要將其在不改變相對大小的情況下,轉(zhuǎn)化為非負整數(shù)。

基數(shù)排序?qū)σ判虻臄?shù)據(jù)是有要求的,需要可以分割出獨立的“位”來比較,而且位之間有遞進的關(guān)系,如果a數(shù)據(jù)的高位比b數(shù)據(jù)大,那剩下的低位就不用比較了。除此之外,每一位的數(shù)據(jù)范圍不能太大,要可以用線性排序算法來排序,否則,基數(shù)排序的時間復(fù)雜度就無法做到O(n)了。

四、復(fù)雜度

排序算法

時間復(fù)雜度

空間復(fù)雜度

是否穩(wěn)定

桶排序

O(n)

O(n)

穩(wěn)定

計數(shù)排序

O(n)

O(n+k)

穩(wěn)定

基數(shù)排序

O(k*n)

O(n)

穩(wěn)定


責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2023-03-02 08:15:13

2023-03-10 08:07:39

數(shù)據(jù)結(jié)構(gòu)算法計數(shù)排序

2023-03-07 08:02:07

數(shù)據(jù)結(jié)構(gòu)算法數(shù)列

2023-11-06 06:43:23

單鏈表查詢數(shù)據(jù)結(jié)構(gòu)

2023-04-27 09:13:20

排序算法數(shù)據(jù)結(jié)構(gòu)

2019-03-29 09:40:38

數(shù)據(jù)結(jié)構(gòu)算法前端

2023-03-06 08:10:52

數(shù)據(jù)結(jié)構(gòu)算法數(shù)據(jù)

2021-07-16 04:57:45

Go算法結(jié)構(gòu)

2021-03-23 08:33:22

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-04-15 09:36:44

Java數(shù)據(jù)結(jié)構(gòu)算法

2020-10-21 14:57:04

數(shù)據(jù)結(jié)構(gòu)算法圖形

2023-03-08 08:03:09

數(shù)據(jù)結(jié)構(gòu)算法歸并排序

2012-04-28 14:21:47

Java數(shù)據(jù)結(jié)構(gòu)線性結(jié)構(gòu)

2023-10-27 07:04:20

2009-08-11 14:14:42

C#數(shù)據(jù)結(jié)構(gòu)與算法

2021-04-16 09:40:52

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-04-22 10:07:45

Java數(shù)據(jù)結(jié)構(gòu)算法

2009-08-03 17:38:12

排序算法C#數(shù)據(jù)結(jié)構(gòu)

2021-05-12 14:09:35

鏈表數(shù)據(jù)結(jié)構(gòu)線性結(jié)構(gòu)

2021-10-18 11:29:48

奇偶排序數(shù)組數(shù)據(jù)結(jié)構(gòu)算法
點贊
收藏

51CTO技術(shù)棧公眾號