Learning JavaScript Data Structures and Algorithms
資料結構(data structure)是電腦系統中組織資料的一種高效方式,學習資料結構及演算法(algorithm)可說是解決各項程式設計問題的重要基礎。
本書起初先從 JavaScript 程式語言的基礎著手,接著便會進入重要的資料結構議題,包含陣列、佇列、堆疊以及鏈結串列等,並且深入探索集合函數與雜湊表。此外你也將學習到樹狀結構、二元樹、以及二元搜尋樹等概念。
在後續章節裡,則包含了圖形、深度優先搜尋(DFS)以及廣度優先搜尋(BFS)。
你將學習到如何掌握各種搜尋及排序演算法,包含循序搜尋、二分搜尋、快速排序、以及氣泡排序等。而在本書的最後,也將探索動態規劃(dynamic programming)的概念。
你能夠從本書學習到
•在陣列、堆疊及佇列中宣告、起始、新增及移除項目。
•建立複雜的資料結構與圖形,並應用 DFS、BFS 等演算法。
•一手掌握鏈結串列、雙向鏈結串列以及環狀鏈結串列。
•利用雜湊表、字典與集合來存放獨一無二的元素。
•探索二元樹及二元搜尋樹的應用。
•對資料結構進行氣泡排序、選擇排序、插入排序、合併排序以及快速排序。
•藉由循序搜尋與二分搜尋在資料結構中搜尋元素。
•瞭解大O表示法、動態規劃以及貪婪演算法。
資料結構(data structure)是電腦系統中組織資料的一種高效方式,學習資料結構及演算法(algorithm)可說是解決各項程式設計問題的重要基礎。
本書起初先從 JavaScript 程式語言的基礎著手,接著便會進入重要的資料結構議題,包含陣列、佇列、堆疊以及鏈結串列等,並且深入探索集合函數與雜湊表。此外你也將學習到樹狀結構、二元樹、以及二元搜尋樹等概念。
在後續章節裡,則包含了圖形、深度優先搜尋(DFS)以及廣度優先搜尋(BFS)。
你將學習到如何掌握各種搜尋及排序演算法,包含循序搜尋、二分搜尋、快速排序、以及氣泡排序等。而在本書的最後,也將探索動態規劃(dynamic programming)的概念。
你能夠從本書學習到
•在陣列、堆疊及佇列中宣告、起始、新增及移除項目。
•建立複雜的資料結構與圖形,並應用 DFS、BFS 等演算法。
•一手掌握鏈結串列、雙向鏈結串列以及環狀鏈結串列。
•利用雜湊表、字典與集合來存放獨一無二的元素。
•探索二元樹及二元搜尋樹的應用。
•對資料結構進行氣泡排序、選擇排序、插入排序、合併排序以及快速排序。
•藉由循序搜尋與二分搜尋在資料結構中搜尋元素。
•瞭解大O表示法、動態規劃以及貪婪演算法。