《數據結構與算法之美》學習筆記之開篇

本系列是極客時間中前 Google 工程師王爭《數據結構與算法之美》專欄的學習筆記,想增強數據結構及算法能力的同窗能夠直接購買此專欄,跳轉連接在此git

什麼是數據結構?什麼是算法?

從廣義上講,數據結構就是指一組數據的存儲結構。算法就是操做數據的一組方法。github

數據結構和算法是相輔相成的。數據結構是爲算法服務的,算法要做用在特定的數據結構之上。面試

數據結構是靜態的,它只是組織數據的一種方式。若是不在它的基礎上操做、構建算法、孤立存在的數據結構就是沒用的算法

數據結構和算法知識點彙總

如下是王爭歸納的數據結構和算法知識點彙總編程

經常使用及基礎數據結構與算法

數據結構

數組、鏈表、棧、隊列、散列表、二叉樹、堆、跳錶、圖、Trie 樹數組

算法

遞歸、排序、二分查找、搜索、哈希算法、貪心算法、分治算法、回溯算法、動態規劃、字符串匹配算法數據結構

書單推薦

入門

  • 《大話數據結構》本書最大特色理論講的有趣不枯燥
  • 《算法圖解》本書最大特色主打圖解,通俗易懂

面試

  • 《劍指 offer》本書幾乎包含了全部常見的、經典的面試題
  • 《編程珠璣》講了不少針對海量數據的處理技巧
  • 《編程之美》本書做者絕大多數爲微軟的工程師,因此裏面算法題目稍微偏難,面試 Google,Facebook 這樣的公司可使用此書

針對特定編程語言的教科書

  • 《數據結構與算法分析:C++ 描述》
  • 《數據結構與算法分析:C 語言描述》
  • 《數據結構與算法分析:Java 語言描述》

經典之作

  • 《算法導論》裏面充斥這各類算法的正確性、複雜度的證實、推導,數學公式比較大,看起來比較吃力
  • 《算法》內容比較友好,更適合初學者入門。可是內容不夠全面,比較動態規劃這麼重要的知識點,本書並無講。

殿堂級經典

  • 《計算機程序設計藝術》這套書的深度、廣度、系統性、全面性是其餘全部數據結構和算法書籍都沒法相比的。

代碼

聲明

本文更可能是本人學習筆記之用,更多詳細的講解級代碼查看極客時間專欄《數據結構與算法之美》數據結構和算法

相關文章
相關標籤/搜索