本身為前端工程師,因此常使用JavaScript,也因為工作環境的關係,增加了對Python的使用。許多面試會考到資料結構與演算法,而在練習刷leetcode時,也發現許多題目也要應用它們,所以這次想回歸基本面扎根,對於程式邏輯與思路才能有良好的成長。
程式設計中資料結構與演算法是非常重要的兩大項目,彼此之間都會影響程式的運作。 資料結構 電腦在儲存資料時,會儲存在電腦的記憶體中,而資料可以有不同的儲存與組織...
陣列(Array)是一種常見的資料結構,常用來處理相同類型的有序資料,並存放在連續的記憶體空間中。但由於會先宣告固定記憶體空間,容易造成記憶體浪費。 在讀取與修...
鏈結串列(Linked List)常用來處理相同類型資料,在不連續的記憶體位置,以隨機的方式儲存,由於不用事先宣告一塊連續記憶體空間,所以較不會造成記憶體的浪費...
鏈結串列(Linked List)建立的方法 append: 在尾部新增節點 insertAt: 在特定位置插入節點 removeAt: 刪除特定位置節...
堆疊(Stack)是一種排列結構,不過是由下往上堆放,任何動作都必須從最頂端(top)進行,因此有「後進先出」(Last In First Out)特性,縮寫為...
堆疊(Stack)建立的方法 push: 新增元素 pop: 從頂端移除元素 peek: 查看頂端(top)元素 size: 查看此堆疊的元素量...
佇列(Queue)是一種排列結構,雖然與堆疊類似,但佇列在新增與刪除資料必須在不同端進行,前端(front)能夠刪除(dequeue)與查看(peek)資料,尾...
佇列(Queue)建立的方法 enqueue: 尾端新增元素 dequeue: 從前端移除元素 peek: 查看最前端元素 size: 此佇列的元素量...
雜湊表(Hash Table)又稱哈希表,是透過雜湊函式(Hash Function)來計算出一個鍵(key)與值(value)所對應的位置,進而建立雜湊表格,...
雜湊表(Hash Table)建立的方法 hash: 雜湊函式 add: 新增資料 search: 搜尋資料 remove: 刪除資料 本實作使用...