數(shù)據(jù)結(jié)構(gòu)的四種形式

大家好炫乓,我是朱光翼娄徊,今天是JS學(xué)習(xí)的第三天辅肾,我在北京珠峰學(xué)習(xí)的第三天(打個(gè)廣告绪杏,大家見(jiàn)諒)。今天我們學(xué)習(xí)了很多數(shù)據(jù)類型击蹲,以及他們?cè)贘S底層運(yùn)行的方式署拟。

不知道有沒(méi)有朋友和我一樣,多年中一直覺(jué)得數(shù)據(jù)類型就是數(shù)據(jù)結(jié)構(gòu)歌豺。(大家不要笑推穷,我真的是這么以為的)。但其實(shí)不是的类咧,JS中有很多數(shù)據(jù)類型:類似與Number/boolean/null/undefinal/String/symbol/等等馒铃,這些類型是如何產(chǎn)生的蟹腾,這個(gè)問(wèn)題我還沒(méi)有去研究,但是我發(fā)現(xiàn)了數(shù)據(jù)結(jié)構(gòu)這個(gè)東西区宇,并且并不難娃殖,所以今天和大家分享一下,希望對(duì)大家的學(xué)習(xí)有所幫助议谷。


什么是數(shù)據(jù)結(jié)構(gòu)那炉爆?

程序的目的主要是用一些邏輯語(yǔ)句去控制一些數(shù)據(jù),然后達(dá)到某種目的卧晓,比方說(shuō)經(jīng)典的排序問(wèn)題芬首,就是不停的“搬運(yùn)”數(shù)據(jù)。數(shù)據(jù)的擺放方式禀崖,決定了搬運(yùn)的效率衩辟,好的數(shù)據(jù)擺放螟炫,更容易讓邏輯語(yǔ)句達(dá)到目的波附。那么數(shù)據(jù)結(jié)構(gòu)代表了數(shù)據(jù)是如何擺放的,如何相互關(guān)聯(lián)的昼钻,如何去取用存放的掸屡。邏輯語(yǔ)句根據(jù)不同的數(shù)據(jù)結(jié)構(gòu)特點(diǎn),進(jìn)行最合理的操作然评,來(lái)達(dá)到目的仅财,實(shí)現(xiàn)程序功能。

那么數(shù)據(jù)結(jié)構(gòu)總共分為幾類那碗淌?

在我閱讀的書(shū)籍中盏求,一共給數(shù)據(jù)分為四種結(jié)構(gòu),我相信后來(lái)的科技發(fā)展會(huì)有其他的數(shù)據(jù)結(jié)構(gòu)類型亿眠,各位朋友可以在留言板中補(bǔ)充碎罚,謝謝。

注:這里還是要提醒大家纳像,所寫(xiě)內(nèi)容比較淺顯荆烈,且并不權(quán)威,只討論原理竟趾,并不能作為應(yīng)用標(biāo)準(zhǔn)

? ? ? ? 1憔购、棧(Stack):本意是干草堆,有點(diǎn)像我們會(huì)把一些東西堆在一起岔帽,比方說(shuō)把衣服堆高玫鸟,它的特點(diǎn)就是,如果我去拿衣服犀勒,最好是從上往下一件一件拿鞋邑。? ? 這與我們放衣服的順序是相反的诵次,在書(shū)中有一個(gè)縮寫(xiě)叫做FILO(first in last out)先進(jìn)后出,所以這個(gè)棧是一個(gè)線性的枚碗,不是那么靈活逾一。

? ? ? ? 2、隊(duì)列(Queue):像是在排隊(duì)肮雨,與棧不同的是隊(duì)列是先進(jìn)后出遵堵,即FIFO(first in first out),同樣是線性的存儲(chǔ)關(guān)系怨规,那有什么不同那陌宿?在棧內(nèi)存中,我們拿出一個(gè)東西和放入一個(gè)東西波丰,只和我們最后操作的內(nèi)容有關(guān)系壳坪,棧其余的內(nèi)容都沒(méi)有受到影響。但是隊(duì)列不一樣掰烟,由于先進(jìn)后出的關(guān)系爽蝴,我們隊(duì)列最前面的人出去以后,隊(duì)列后面的人會(huì)跟上纫骑,這樣原來(lái)的第二位蝎亚,變成了第一位,也就是說(shuō)后面的地址前移了先馆。

? ? ? ? 3发框、鏈表,鏈表本身也是一個(gè)線性的關(guān)系煤墙,但鏈表與前兩者的不同是梅惯,在鏈表中的每個(gè)元素,末尾都有一個(gè)地址仿野,如果這個(gè)地址直接指向下一個(gè)元素铣减,那么這與棧和隊(duì)列就沒(méi)有什么區(qū)別了,但是如果我們操作這個(gè)地址來(lái)改變它设预,我們可以讓地址鏈接任何一個(gè)元素徙歼,這就變得很靈活,在程序中我們程序員通常會(huì)開(kāi)辟一個(gè)空間鳖枕,這個(gè)空間要做指定的事情魄梯,為了靈活我們會(huì)選用鏈表形式的數(shù)據(jù)結(jié)構(gòu)。

? ? ? ? 4宾符、二叉樹(shù):二叉樹(shù)與鏈表比較相似酿秸,不同的是二叉樹(shù)的每一個(gè)元素結(jié)尾有兩個(gè)地址,也就是可以指向兩個(gè)元素魏烫,這樣做有什么好處那辣苏?應(yīng)該來(lái)說(shuō)肝箱,我們?cè)谒阉鞯臅r(shí)候效率更高,在某一個(gè)分叉上尋找內(nèi)容稀蟋,而不需要遍歷所有的數(shù)據(jù)煌张。



以上就是數(shù)據(jù)結(jié)構(gòu)中我所查詢到的內(nèi)容,都是計(jì)算機(jī)底層的存儲(chǔ)機(jī)制退客,希望對(duì)你有幫助骏融。

這里有一個(gè)小小的收獲,在JS的學(xué)習(xí)中萌狂,我們老師講解到JS中棧內(nèi)存負(fù)責(zé)存儲(chǔ)變量名档玻、基本數(shù)據(jù)類型,完成JS代碼的運(yùn)行茫藏。當(dāng)遇到數(shù)組误趴、函數(shù)、對(duì)象時(shí)會(huì)用堆來(lái)存儲(chǔ)务傲。我們會(huì)看到上面沒(méi)有堆這種數(shù)據(jù)結(jié)構(gòu)凉当,于是通過(guò)上網(wǎng)查詢,我找到堆的相關(guān)信息树灶,發(fā)現(xiàn)里面也大有文章纤怒,我這里不做贅述糯而,大家可以點(diǎn)擊這個(gè)鏈接觀看堆和棧的解釋和區(qū)別天通。

今天就到這里,再見(jiàn)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末熄驼,一起剝皮案震驚了整個(gè)濱河市像寒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌瓜贾,老刑警劉巖诺祸,帶你破解...
    沈念sama閱讀 218,451評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異祭芦,居然都是意外死亡筷笨,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén)龟劲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)胃夏,“玉大人,你說(shuō)我怎么就攤上這事昌跌⊙鲑鳎” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,782評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵蚕愤,是天一觀的道長(zhǎng)答恶。 經(jīng)常有香客問(wèn)我饺蚊,道長(zhǎng),這世上最難降的妖魔是什么悬嗓? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,709評(píng)論 1 294
  • 正文 為了忘掉前任污呼,我火速辦了婚禮,結(jié)果婚禮上包竹,老公的妹妹穿的比我還像新娘曙求。我一直安慰自己,他們只是感情好映企,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,733評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布悟狱。 她就那樣靜靜地躺著,像睡著了一般堰氓。 火紅的嫁衣襯著肌膚如雪挤渐。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,578評(píng)論 1 305
  • 那天双絮,我揣著相機(jī)與錄音浴麻,去河邊找鬼。 笑死囤攀,一個(gè)胖子當(dāng)著我的面吹牛软免,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播焚挠,決...
    沈念sama閱讀 40,320評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼膏萧,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了蝌衔?” 一聲冷哼從身側(cè)響起榛泛,我...
    開(kāi)封第一講書(shū)人閱讀 39,241評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎噩斟,沒(méi)想到半個(gè)月后曹锨,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,686評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡剃允,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,878評(píng)論 3 336
  • 正文 我和宋清朗相戀三年沛简,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片斥废。...
    茶點(diǎn)故事閱讀 39,992評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡椒楣,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出营袜,到底是詐尸還是另有隱情撒顿,我是刑警寧澤,帶...
    沈念sama閱讀 35,715評(píng)論 5 346
  • 正文 年R本政府宣布荚板,位于F島的核電站凤壁,受9級(jí)特大地震影響吩屹,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜拧抖,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,336評(píng)論 3 330
  • 文/蒙蒙 一煤搜、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧唧席,春花似錦擦盾、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,912評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至徒仓,卻和暖如春腐碱,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背掉弛。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,040評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工症见, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人殃饿。 一個(gè)月前我還...
    沈念sama閱讀 48,173評(píng)論 3 370
  • 正文 我出身青樓谋作,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親乎芳。 傳聞我的和親對(duì)象是個(gè)殘疾皇子遵蚜,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,947評(píng)論 2 355

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