雖然名字看上去是貓派,可是貓狗都喜歡。最近有工作方面的需求,需要對演算法更熟悉,也就是俗稱的刷題。在自我練習的過程中,希望能留些紀錄當作筆記釐清自己的思緒、完善思考結構。就像一開始不熟悉狗狗的時候可能覺得惡犬勿進,熟悉了之後就變成了好夥伴,讓我們用 30 天一起好好跟這隻 Algo 培養感情吧。
※本主題以分類介紹各種演算法基礎為主,並非高難度的算法探討
前言 昨天介紹完 Queue 和 Stack,今天來聊聊單調堆疊,看名字可以知道是堆疊的變種,那麼差在哪裡呢?單調這兩個字指的是讓存放於堆疊中的元素具單調性...
前言 昨天聊了單調堆疊,單調堆疊解決了下一個最大/最小元素的問題,那麼如果我們把佇列也套上單調性,能夠解決什麼樣的問題嗎?在陣列的部分,我們聊過滑動窗口的問題...
資料結構 過了些時日,我們終於來到了樹狀結構的地方,樹狀結構是演算法題目中的一個大篇幅,也是相對前面陣列、佇列來說結構更加複雜的地方。今天我們先大概了解一下樹...
前言 二元樹真的是演算法裡非常大的一個章節。(看看 Leetcode,有 Binary Tree 的 Tag 的題目就有 100多題)因為樹這個結構本身就是透...
前言 二元樹的層級搜索,指的是從層級由根往葉,以橫的方向逐一遍歷每層節點。這在圖論中,有個專有的搜尋法:廣度優先搜尋法,Breadth-First Searc...
看過層級遍歷後,我們來看下一個主題:樹的深度相關的主題。平衡二元樹的特性也與樹的深度相關,在切入正題之前,我們先來題簡單的深度計算熱熱手。 Maximum De...
前言 雖然在 Day 14 我們有寫過一題構造 Binary Search Tree (文中會簡稱 BST)的題目,但還沒好好的看過這個結構,這個結構的相關題...
如昨天講的,今天主要會討論二元搜尋樹的刪除與修改。今天寫標題才突然想到,如果 Create 我指的是創建整棵樹,那好像刪除也要同等是講整棵樹,不過今天要討論的刪...
樹的結構差不多告一個段落,再來就資料結構的順序上,會進入圖的單元,也就是樹結構的進階。圖的結構裡有兩種主要遍歷模式,分別是深度優先搜尋(DFS)和廣度優先搜尋(...
如果和其他演算法相關的系列文比較,就會發現差不多也涵蓋完了基本的資料結構,在以資料結構來討論裡面,圖通常是大家的最後一站(撇除部分系列文會討論更高階的資料結構)...