本系列是極客時間中前 google 工程師王爭《資料結構與演算法之美》專欄的學習筆記,想加強資料結構及演算法能力的同學可以直接購買此專欄,跳轉鏈結在此從廣義上講,資料結構就是指一組資料的儲存結構。演算法就是運算元據的一組方法。
資料結構和演算法是相輔相成的。資料結構是為演算法服務的,演算法要作用在特定的資料結構之上。
資料結構是靜態的,它只是組織資料的一種方式。如果不在它的基礎上操作、構建演算法、孤立存在的資料結構就是沒用的
以下是王爭概括的資料結構和演算法知識點彙總
常用及基礎資料結構與演算法
資料結構
陣列、鍊錶、棧、佇列、雜湊表、二叉樹、堆、跳表、圖、trie 樹
演算法遞迴、排序、二分查詢、搜尋、雜湊演算法、貪心演算法、分治演算法、回溯演算法、動態規劃、字串匹配演算法
入門 面試
針對特定程式語言的教科書
經典之做
殿堂級經典
本文更多是本人學習筆記之用,更多詳細的講解級**檢視極客時間專欄《資料結構與演算法之美》
《資料結構與演算法之美》學習筆記 3 資料結構
陣列定義 陣列 array 是一種線性表資料結構。它用一組連續的記憶體空間,來儲存一組具有相同型別的資料。第一是線性表 linear list 顧名思義,線性表就是資料排成像一條線一樣的結構。每個線性表上的資料最多只有前和後兩個方向。除了陣列,鍊錶 佇列 棧等也是線性表結構。而與它相對立的概念是非線...
資料結構與演算法之美學習筆記 5 9章
陣列是一種線性表資料結構,他用一組連續的記憶體空間,來儲存相同型別的資料 這裡要注意不根據下標是不能隨機訪問的啊 假設乙個長度為10的int型陣列,會分配一塊連續記憶體空間 1000 1039,其中,記憶體塊首位址是1000 我們可以通過以下公式快速獲取到指定下標的元素 a i address ba...
陣列 資料結構和演算法之美學習筆記
陣列 array 是一種線性表資料結構。它用一組連續的記憶體空間,來儲存一組具有相同型別的資料 第一是線性表 linear list 顧名思義,線性表就是資料排成像一條線一樣的結構。每個線性表上的資料最多只有前和後兩個方向。其實除了陣列,鍊錶 佇列 棧等也是線性表結構 非線性表,比如二叉樹 堆 圖等...