JS中 數(shù)組與鏈表

理解 數(shù)組與鏈表

1. 數(shù)組

① 數(shù)組的定義上有個(gè)必要條件是:“存儲(chǔ)在連續(xù)的內(nèi)存空間里”的有序元素序列慎恒。
② “JS 數(shù)組未必是真正的數(shù)組”
③ 區(qū)分JS數(shù)組 和 常規(guī)數(shù)組

常規(guī)數(shù)組: 數(shù)組元素內(nèi)容是一種類(lèi)型的元素,如const arr = [1,2,3,4]颂翼,在存儲(chǔ)空間是連續(xù)內(nèi)存的达皿。
JS數(shù)組: 數(shù)組元素內(nèi)容不是同一種類(lèi)型的元素乔遮,如const arr = ['haha', 1, {a:1}]沪编,則在存儲(chǔ)上是一段非連續(xù)空間帖池。此時(shí),JS 數(shù)組不再具有數(shù)組的特征慌申,其底層其實(shí)是由鏈表來(lái)實(shí)現(xiàn)的陌选。

2. 鏈表

① 在存儲(chǔ)上是無(wú)序的理郑,依靠next指針指向下一個(gè)node結(jié)點(diǎn)
② JS 中的鏈表,是以嵌套的對(duì)象的形式來(lái)實(shí)現(xiàn)的


3. 鏈表 與 數(shù)組

① 我們假設(shè)數(shù)組的長(zhǎng)度是 n咨油,那么因增加/刪除操作導(dǎo)致需要移動(dòng)的元素?cái)?shù)量您炉,就會(huì)隨著數(shù)組長(zhǎng)度 n 的增大而增大,呈一個(gè)線性關(guān)系役电。所以說(shuō)數(shù)組增加/刪除操作對(duì)應(yīng)的復(fù)雜度就是 O(n)赚爵。
在鏈表中,添加和刪除操作的復(fù)雜度是固定的——不管鏈表里面的結(jié)點(diǎn)個(gè)數(shù) n 有多大法瑟,只要我們明確了要插入/刪除的目標(biāo)位置冀膝,那么我們需要做的都僅僅是改變目標(biāo)結(jié)點(diǎn)及其前驅(qū)/后繼結(jié)點(diǎn)的指針指向。 因此我們說(shuō)鏈表增刪操作的復(fù)雜度是常數(shù)級(jí)別的復(fù)雜度霎挟,用大 O 表示法表示為 O(1)
② 在數(shù)組中窝剖,我們直接訪問(wèn)索引、可以做到一步到位酥夭,這個(gè)操作的復(fù)雜度會(huì)被降級(jí)為常數(shù)級(jí)別(O(1)):
隨著鏈表長(zhǎng)度的增加枯芬,我們搜索的范圍也會(huì)變大、遍歷其中任意元素的時(shí)間成本自然隨之提高采郎。這個(gè)變化的趨勢(shì)呈線性規(guī)律千所,用大 O 表示法表示為 O(n)。


簡(jiǎn)單來(lái)說(shuō):
鏈表的插入/刪除效率較高蒜埋,而訪問(wèn)效率較低淫痰;
數(shù)組的訪問(wèn)效率較高,而插入效率較低

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末整份,一起剝皮案震驚了整個(gè)濱河市待错,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌烈评,老刑警劉巖火俄,帶你破解...
    沈念sama閱讀 211,376評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異讲冠,居然都是意外死亡瓜客,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門(mén)竿开,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)谱仪,“玉大人,你說(shuō)我怎么就攤上這事否彩》柙埽” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,966評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵列荔,是天一觀的道長(zhǎng)敬尺。 經(jīng)常有香客問(wèn)我枚尼,道長(zhǎng),這世上最難降的妖魔是什么砂吞? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,432評(píng)論 1 283
  • 正文 為了忘掉前任署恍,我火速辦了婚禮,結(jié)果婚禮上呜舒,老公的妹妹穿的比我還像新娘锭汛。我一直安慰自己笨奠,他們只是感情好袭蝗,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著般婆,像睡著了一般到腥。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上蔚袍,一...
    開(kāi)封第一講書(shū)人閱讀 49,792評(píng)論 1 290
  • 那天乡范,我揣著相機(jī)與錄音,去河邊找鬼啤咽。 笑死晋辆,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的宇整。 我是一名探鬼主播瓶佳,決...
    沈念sama閱讀 38,933評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼鳞青!你這毒婦竟也來(lái)了霸饲?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,701評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤臂拓,失蹤者是張志新(化名)和其女友劉穎厚脉,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體胶惰,經(jīng)...
    沈念sama閱讀 44,143評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡傻工,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了孵滞。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片精钮。...
    茶點(diǎn)故事閱讀 38,626評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖剃斧,靈堂內(nèi)的尸體忽然破棺而出轨香,到底是詐尸還是另有隱情,我是刑警寧澤幼东,帶...
    沈念sama閱讀 34,292評(píng)論 4 329
  • 正文 年R本政府宣布臂容,位于F島的核電站科雳,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏脓杉。R本人自食惡果不足惜糟秘,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望球散。 院中可真熱鬧尿赚,春花似錦、人聲如沸蕉堰。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,742評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)屋讶。三九已至冰寻,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間皿渗,已是汗流浹背斩芭。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留乐疆,地道東北人划乖。 一個(gè)月前我還...
    沈念sama閱讀 46,324評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像挤土,于是被迫代替她去往敵國(guó)和親琴庵。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容