【算法日積月累】0-寫在前面的話

我是一個半路出家的“程序員”膨处,在我剛開始從事編碼工作的頭幾年,我沒有接觸過“算法和數(shù)據(jù)結構”桐早,覺得它們是只會在我找工作的時候用得到的知識躯泰。盡管有很多人跟我說過“算法和數(shù)據(jù)結構”無比重要,我也很相信“算法和數(shù)據(jù)結構”很重要安聘,但萬事“開頭難”痰洒、“開頭難”、“開頭難”……

為什么“難”浴韭?因為不知道應該如何入門丘喻,手邊沒有很好參考資料钦讳,身邊也沒有從事算法工作的同事霸褒,連個會算法的科班出身的同事都沒有。

終于有一天超棺,我終于開始了舍肠,從此入坑搀继。

于是乎,我想寫一個系列文章翠语,記錄一下我學習過的“算法與數(shù)據(jù)結構”的過程叽躯,如果有幸能夠給一些朋友幫助,我會感到很榮幸肌括。

如果你想在“程序員”的道路上走得更遠的話点骑,“算法與數(shù)據(jù)結構”是必學的,越早學習越好谍夭。

我是誰黑滴?我是一個本科數(shù)學專業(yè),其實數(shù)學一點都不好的程序員紧索,如果你有更好的學習建議袁辈,歡迎指點、交流珠漂。

參考資料

先從“參考資料”說起吧晚缩,“算法和數(shù)據(jù)結構”是一門非常抽象的學科,就像非數(shù)學專業(yè)的學生學習數(shù)學一樣媳危,如果沒有很形象荞彼、生動的學習資料,入門就會是一件非常痛苦的事情待笑。因此鸣皂,找好“參考資料”很重要。

入門視頻教程

我的算法入門課程是慕課網 liuyubobobo 老師的《玩轉算法》課程。這門課程我是在 2017 年 5 月的時候學習的签夭,可以說通過這門課程的學習打開了我進入“算法與數(shù)據(jù)結構”學習的大門齐邦。 liuyubobobo 老師的講解十分細致,配合了制作精美的動畫第租,大大降低了抽象的算法的理解程度措拇,如果你對“算法和數(shù)據(jù)結構”一無所知,強烈建議你看看這個老師的視頻教程慎宾,不懂的地方多看幾遍丐吓,看完要做筆記,要練習趟据。 liuyubobobo 老師是用 C++ 語言講解的這個課程券犁,我當時只會 Java ,不過一點都不影響理解汹碱,正如 liuyubobobo 老師的介紹“算法與數(shù)據(jù)結構應該是與語言無關的”粘衬。

我這個系列的文章,在開始的部分咳促,基本會按照 liuyubobobo 老師課程的思路來稚新,其實很多就是我學習這門課程的時候的筆記,只不過是我已經來來回回修改了好幾遍了」蚋梗現(xiàn)在發(fā)出來的版本褂删,我重新使用了 Python 語言實現(xiàn)。在人工智能冲茸、機器學習屯阀、深度學習、數(shù)據(jù)科學大行其道的今天轴术,Python 又是如此簡單难衰、易用,我們沒有理由不用 Python逗栽。

我可以召衔,相信聰明的你也一定可以。

這是我做的筆記祭陷。

寫在前面的話-1

這里要說明一點:在我的系列文章中出現(xiàn)的學習資料,不論是網絡視頻趣席、書籍還是介紹算法的網站兵志、刷題網站,都只是我自己的學習路徑的真實介紹宣肚,沒有任何廣告的意思想罕,我只是覺得它們好,并且我真的從這些資料上學到了東西,所以我才寫在這里按价。事實上惭适,聰明的你無須付費就可以獲得它們,并使用它們楼镐。

入門書籍

我的算法入門書籍:《算法4》

寫在前面的話-2

這里的 4 是第 4 版的意思癞志,這是一本非常經典的外文讀物,已經有中文譯本了框产。這本書和《算法導論》一樣厚凄杯,但比《算法導論》要生動很多,同時也是國外名校使用的一門非常經典的教材秉宿。

這本書的特點:
1戒突、顏值特別高:紅色的封面,里面的紙像打印值一樣白描睦,閱讀的時候很舒服膊存;
2、結構很清晰忱叭,每一個算法都有代碼實現(xiàn)隔崎,主要還是 Java,我當時只會 Java 語言窑多,看這本書其實沒有什么阻力仍稀;
3、這本書還有配套的網站埂息,你可以去這個網站上下載書中的代碼技潘。

其實我之前介紹的 liuyubobobo 老師課程也大量參考和使用 《算法4》 這本書上的思路和例題。兩者配合著學習千康,并且要練習享幽,可以說是非常完美了。

下面再說一說其它的書籍:

《算法導論》

寫在前面的話-3

我是學習了《算法4》(當然沒有看完)再去看《算法導論》的拾弃,很多地方其實都容易理解得多值桩,《算法導論》有一點對初學者很不友好的地方,那就是所有的算法代碼都是偽代碼豪椿,但這毫不影響《算法導論》的地位奔坟,或許《算法導論》根本就不是給初學者看的。

《算法圖解》

寫在前面的話-4

這本書我是和《算法4》一起買的搭盾,一本很小的書咳秉,用 Python 語言實現(xiàn),看著玩鸯隅,圖中的插畫很生動澜建。看這本書主要是讓我覺得算法可以以比較輕松的方式入門。

《劍指 Offer》

寫在前面的話-5

這本書主要用于準備算法面試炕舵,在網絡上備受好評何之。里面有很多問題是和 LeetCode 重合的,作者會以面試官的角度給出對這些問題考察的內容咽筋。

鄧俊輝老師《數(shù)據(jù)結構 C++ 語言版》

寫在前面的話-6

其實最早認識鄧老師是他的 mooc 溶推,他制作的算法與數(shù)據(jù)結構 flash 動畫是十分生動的,它的教材和課件風格是一致的晤硕,他在教學中還賦予了算法比較優(yōu)雅的哲學含義悼潭。在內容上,涉及到了一些高級數(shù)據(jù)結構舞箍,例如紅黑樹舰褪、B 樹等,如果理解高級數(shù)據(jù)結構有困難的話疏橄,可以看看他的 mooc 或教材占拍。

刷題網站

LeetCode

傳送門:LeetCode

想熟練掌握常用的算法和數(shù)據(jù)結構捎迫,刷題是必經之路晃酒。
LeetCode 是國內外公認的刷題網站,這個網站上羅列的問題是一些知名公司的面試問題窄绒。
這個網站現(xiàn)在已經有中文版了贝次,對于看英文比較吃力的朋友,例如我來說彰导,是一個好消息蛔翅。不過中文版里面的討論的內容沒有英文版多,所以位谋,想要參考別人寫的代碼可以到中文版上看題目的翻譯山析,到英文版里看別人的代碼。

順便說說掏父,我在刷題的過程中笋轨,我找到了一些視頻資源,這些視頻資源也可以幫助你理解一些問題赊淑,可能大伙在刷題的時候也會搜索到它們的視頻資源或者個人博客爵政,它們是“Cspiration”、“花花醬”陶缺、“小 Q”钾挟、“小 Fu”等。

LintCode

傳送門:LintCode组哩。

這個網站可以作為 LeetCode 的補充,不過我看大家刷得比較多的還是 LeetCode。

ACWING

傳送門:AcWing伶贰。

這是我在 B 站上看到一個北大研究生“大雪菜”做的直播時看到的網站蛛砰,AcWing = Accepted + Wing,簡稱AC 之翼黍衙。在上面可以刷一些 LeetCode 上沒有的 《劍指 Offer》的題泥畅,“大雪菜”還會在直播里給你講每道題的思路,這個網站上還有一些活動琅翻,激勵里去刷題和分享位仁,我覺得還是很不錯的。

總結

1方椎、培養(yǎng)興趣

學習《算法與數(shù)據(jù)結構》是一項工程聂抢,并不是一件特別輕松的事情,所以我覺得剛開始的時候棠众,培養(yǎng)興趣是很關鍵的琳疏,要讓自己認識到學習《算法和數(shù)據(jù)結構》是十分有用的。

2闸拿、樂于分享

不止一個人告訴我應該把自己的解題思路寫成文字分享出去了空盼。寫成文字可以幫助自己思考,也方便以后查看新荤,也能幫助到別人揽趾。事實上,互聯(lián)網上這樣的人有很多苛骨,應該成為他們中的一員篱瞎。

3、堅持

貴在堅持智袭,不要輕易說放棄奔缠。

(本節(jié)完)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市吼野,隨后出現(xiàn)的幾起案子校哎,更是在濱河造成了極大的恐慌,老刑警劉巖瞳步,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件闷哆,死亡現(xiàn)場離奇詭異,居然都是意外死亡单起,警方通過查閱死者的電腦和手機抱怔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來嘀倒,“玉大人屈留,你說我怎么就攤上這事局冰。” “怎么了灌危?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵康二,是天一觀的道長。 經常有香客問我勇蝙,道長沫勿,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任味混,我火速辦了婚禮产雹,結果婚禮上,老公的妹妹穿的比我還像新娘翁锡。我一直安慰自己蔓挖,他們只是感情好,可當我...
    茶點故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布盗誊。 她就那樣靜靜地躺著时甚,像睡著了一般。 火紅的嫁衣襯著肌膚如雪哈踱。 梳的紋絲不亂的頭發(fā)上荒适,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天,我揣著相機與錄音开镣,去河邊找鬼刀诬。 笑死,一個胖子當著我的面吹牛邪财,可吹牛的內容都是我干的陕壹。 我是一名探鬼主播,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼树埠,長吁一口氣:“原來是場噩夢啊……” “哼糠馆!你這毒婦竟也來了?” 一聲冷哼從身側響起怎憋,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤又碌,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后绊袋,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體毕匀,經...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年癌别,在試婚紗的時候發(fā)現(xiàn)自己被綠了皂岔。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡展姐,死狀恐怖躁垛,靈堂內的尸體忽然破棺而出剖毯,到底是詐尸還是另有隱情,我是刑警寧澤教馆,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布速兔,位于F島的核電站,受9級特大地震影響活玲,放射性物質發(fā)生泄漏。R本人自食惡果不足惜谍婉,卻給世界環(huán)境...
    茶點故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一舒憾、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧穗熬,春花似錦镀迂、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至妓柜,卻和暖如春箱季,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背棍掐。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工藏雏, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人作煌。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓掘殴,卻偏偏與公主長得像,于是被迫代替她去往敵國和親粟誓。 傳聞我的和親對象是個殘疾皇子奏寨,可洞房花燭夜當晚...
    茶點故事閱讀 42,877評論 2 345

推薦閱讀更多精彩內容

  • 原文鏈接:http://zh.lucida.me/blog/on-learning-algorithms/原文作者...
    江流兒Z閱讀 1,943評論 2 74
  • 隨著自己寫的越來越多,慢慢的就會有人和我主動交流鹰服,現(xiàn)在好多人希望我寫一篇考研病瞳、就業(yè)的選擇、零基礎如何學習編程获诈,秋招...
    編程劍譜閱讀 1,261評論 5 33
  • 柚柚柚子雄 燈光再暖,也想抱住你亡嫌。北風添寒意嚎于,暖茶溫相思掘而。此刻我心里,牽掛著今生的牽掛于购,親愛的梅袍睡,有很多話,真的肋僧,...
    李讓young閱讀 309評論 0 1
  • 下午斑胜,我專門到你辦公室樓下去接你,但是你卻不愿做我的車回家嫌吠。你說止潘,雖然仍然愛我,但是希望我們斷絕這種關系辫诅。...
    lovexm閱讀 223評論 0 0
  • 忘不了您和風細雨般的話語炕矮,洗滌了我心靈的泥塵么夫;忘不了您如東風般浩蕩的叮嚀與囑咐;給予我前進的勇氣肤视,忘不了您的一笑...
    喜舊之人53閱讀 250評論 3 6