《資料結構與演算法之美》如何抓住重點,系統高效地學習資料結構與演算法 (讀後感)

kenuo發表於2019-04-20

什麼是資料結構?

儲存一組資料的方法,資料結構是為演算法服務的,演算法要作用在特定的資料結構之上.資料結構和演算法相輔相成.

什麼是演算法?

廣義上講就是 "操作一組資料的方法",列如圖書館有很多書,我們怎麼才能更快的查詢到書籍呢?可以先根據書籍類別的編號,是人文,還是科學、計算機,來定位書架,然後再依次查詢。籠統地說,這些查詢方法都是演算法。

初學資料結構和演算法知識點思維導圖

初學資料結構和演算法知識點思維導圖

20個常用資料結構和演算法

10個常用資料結構

陣列、連結串列、棧、佇列、雜湊表、二叉樹、堆、跳錶、圖、Trie樹

10個常用演算法

遞迴、排序、二分查詢、搜尋、雜湊演算法、貪心演算法、分治演算法、回溯演算法、動態規劃、字串匹配演算法

學習資料結構和演算法最重要的概念 複雜度分析; 資料結構和演算法解決的是如何更省、更快的儲存和處理資料問題,因此我們需要一個考量效率和消耗資源的方法 複雜度分析法.

學習技巧

  1. 邊學邊練,適度刷題.
  2. 多問、多思考、多互動
  3. 打怪升級學習方法,我們在枯燥的學習過程中是很難持續堅持下去的,我們可以給自己設立一個切實可行的目前.就像玩遊戲打怪升級一樣,一點點看到自己的成長. 比如: 學習筆記、學習心得.
  4. 知識點需要沉澱,不要想試圖一下子掌握所有; 學習知識的過程是反覆迭代、不斷沉澱的過程.

by JeffreyBool blog :point_right: link

相關文章