破題 這題的目標是將一個字串中的每個字母都向後移動一定的位數。移動的位數由一個整數陣列指定,該陣列的長度與字串的長度相同。例如,如果我們有一個字串 abc 和...
方法一:遞迴 解題思路 這道題目要求我們判斷一棵二元樹是否是二元搜尋樹。 二元搜尋樹的特性是,對於任意一個節點,它的左子樹上所有節點的值都小於它,而它的右子樹...
方法一:深度優先搜尋 (DFS) 解題思路 初始化:首先,我們使用深度優先搜尋(DFS)來遍歷 s 中的每一個節點。 子樹比較:對於 s 中的每一個節點...
方法一:動態規劃和組合數 預備知識 組合數是從 個物品中選出 個的不同方法數。我們用 或 來表示它。它的計算公式是: 這裡 表示 的階乘,也...
破題 假設:陣列的長度為 。 題意:這題是希望我們找出一個整數陣列中第 大的數字。 方法一:計數排序 (Counting Sort) 解題思路 首先,...
破題 這題目要求我們實作一種叫做 LRU 的 cache 機制,它可以快速地存取和更新資料。 為了實作這種機制,我們需要用到兩種資料結構:一個是 hash...
破題 首先,我們知道二元搜尋樹的一個重要特性是其中序走訪結果為遞增序列。因此,如果我們得到一個遞增陣列,我們可以確定這個陣列可以作為某個二元搜尋樹的中序走訪結...
方法一:廣度優先搜尋 (BFS) 解題思路 我們可以使用廣度優先搜尋來解決這個問題。最簡單的方法是使用一個 Pair (node, level) 來表示狀態,...
破題 這個題目要在一個字串陣列中找到第一個迴文字串。迴文是指一個字串正向和反向讀都是一樣的,例如 madam。 跟一流的人才幹大事,享受成功進步的高級樂趣!...
方法一:滑動窗口 (Sliding Window) 解題思路 首先,我們需要理解一個基本概念:如果一個字串是另一個字串的排列,那麼這兩個字串中每個字元出現的次...
方法一:深度優先搜尋 (DFS) 解題思路 節點訪問:我們會訪問每一個節點,並以該節點作為起始點。 路徑探索:對於每一個起始節點,我們會探索所有向下延伸...
方法一:遞迴 解題思路 我們要找的最低公共祖先是一個節點,它同時是 p 和 q 的祖先,而且它的深度要盡量大。 我們用一個函數 來表示節點 的子樹中是否...
方法一:動態規劃 (DP) 解題思路 最長共同子序列問題是典型的二維動態規劃問題。例如,給定兩個字串 text1 = "abcde" 和...
方法一:雙指標法 解題思路 初始化兩個指標:我們為兩個陣列 nums1 和 nums2 分別宣告一個指標,分別命名為 i 和 j。這兩個指標都會從各自陣列的...
破題 本題的目的是檢查一個字串是否為迴文。迴文是指一個字串從前往後讀和從後往前讀是相同的。 跟一流的人才幹大事,享受成功進步的高級樂趣!內推機會來啦!能與優...
破題 這題的目標是將一個字串中的數字替換為字母。這個字串中的每個偶數 index 位置都是一個小寫字母,而每個奇數 index 位置都是一個介於 0 到 9...
破題 這個演算法的目的是將一幅畫作分割成多個區段,每個區段都有自己的顏色。畫作由多個區段組成,每個區段都有一個起始點、結束點和顏色。如果兩個區段重疊,那麼重疊...