最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

labuladong 的算法秘籍-讀書筆記-學(xué)習(xí)算法和刷題的框架思維

2023-01-15 15:42 作者:風(fēng)格星辰  | 我要投稿

一、數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)方式

數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)方式只有兩種:數(shù)組(順序存儲(chǔ))和鏈表(鏈?zhǔn)酱鎯?chǔ))。

所有的數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)都是數(shù)組或者鏈表


數(shù)組

優(yōu)點(diǎn)

因?yàn)榇鎯?chǔ)空間是連續(xù)的,所以查找方便

缺點(diǎn)

但是要插入或者刪除中間元素,需要移動(dòng)后續(xù)所有的元素,所以插入刪除比較麻煩

并且擴(kuò)容的時(shí)候需要將舊數(shù)組數(shù)據(jù)遷移到新數(shù)組,也比較麻煩


鏈表

優(yōu)點(diǎn)

與數(shù)組相反,鏈表的插入刪除很方便,只需要修改指向的指針即可,擴(kuò)容時(shí),修改最后一個(gè)元素的指針指向新地址。

缺點(diǎn)

因?yàn)榇鎯?chǔ)空間不連續(xù),所以查找元素,需要一個(gè)個(gè)元素遍歷找,不能隨機(jī)訪問。并且需要存儲(chǔ)前后元素地址,消耗更多存儲(chǔ)空間。


二、數(shù)據(jù)結(jié)構(gòu)的基本操作

遍歷+訪問 增刪改查

各種數(shù)據(jù)結(jié)構(gòu)的遍歷 + 訪問無非兩種形式:線性的和非線性的

線性就是 for/while 迭代為代表,非線性就是遞歸為代表。

所有數(shù)據(jù)結(jié)構(gòu)的遍歷基本都是由for/while或者遞歸或者他們的組合實(shí)現(xiàn)的


三、算法刷題指南

數(shù)據(jù)結(jié)構(gòu)是工具,算法是通過合適的工具解決特定問題的方法。


作者建議的刷題順序

1、先學(xué)習(xí)像數(shù)組、鏈表這種基本數(shù)據(jù)結(jié)構(gòu)的常用算法,比如單鏈表翻轉(zhuǎn),前綴和數(shù)組,二分搜索等。

2、學(xué)會(huì)基礎(chǔ)算法之后,不要急著上來就刷回溯算法、動(dòng)態(tài)規(guī)劃這類筆試??碱},而應(yīng)該先刷二叉樹,先刷二叉樹,先刷二叉樹

因?yàn)槎鏄涫亲钊菀?strong>培養(yǎng)框架思維的,而且大部分算法技巧,本質(zhì)上都是樹的遍歷問題。


綜上,對(duì)于畏懼算法的同學(xué)來說,可以先刷樹的相關(guān)題目,試著從框架上看問題,而不要糾結(jié)于細(xì)節(jié)問題。


labuladong 的算法秘籍-讀書筆記-學(xué)習(xí)算法和刷題的框架思維的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
寿宁县| 文化| 靖江市| 阿合奇县| 黄梅县| 昭苏县| 板桥市| 边坝县| 旬邑县| 吉林市| 兴国县| 潞城市| 象州县| 嘉定区| 衡山县| 马山县| 自治县| 绿春县| 政和县| 宝丰县| 大丰市| 原平市| 水城县| 翼城县| 合山市| 台北县| 安丘市| 迁西县| 无为县| 丹棱县| 米林县| 吉首市| 大石桥市| 高雄市| 新闻| 泸溪县| 杭州市| 涞水县| 淮北市| 望江县| 吉安县|