LeetCode Edit Distance 編輯距離:動態規劃完整解析與 Java 實作
題目描述 給定字串 word1、word2,允許三種操作(插入、刪除、替換,代價均為 1),求將 word1 轉換為 word2 的最小操作數。 動態規劋狀態
HDU 1372 Knight Moves:棋盤騎士最短步數 BFS 經典解法
題目描述 標準 8×8 國際象棋盤,給定起點、終點座標(如 e2 e4),求騎士(馬,走「日」字)最少移動步數。多組測資,輸入至 EOF。 BFS 解法詳解
Lua 內存洩露檢測原理:GC 機制、弱引用與標記清掃深度解析
Lua 內存洩露的本質 Lua 採用自動垃圾回收(GC),理論上無傳統 C/C++ 意義上的內存洩露。Lua 的「洩露」指:**對象已不再被邏輯使用,但仍被外部
LeetCode 二叉樹最大深度:遞歸與迭代兩種解法解析
題目描述 給定一棵二叉樹,求其最大深度。深度定義:從根節點到最遠葉節點路徑上的節點數(含根與葉)。空樹深度為 0。 遞歸解法(DFS 後序) 核心思想:樹的深
HDU ACM N^N 個位數:快速冪模 10 與循環節規律
問題描述 給定正整數 N (1 ≤ N ≤ 1e9),求 N^N 的個位數字(即 N^N mod 10)。多組測資,T 組。 數學規律分析 個位數只取決於底數
HDU 4085 Peach Blossom Spring:斯坦納樹 + 狀態壓縮 DP + 記憶化搜索
題目大意 n (≤ 50) 個點,m 條可建邊(帶權),k (≤ 5) 個人初始位於 1..k,目標移動到 n-k+1..n(一一對應不限順序)。從給定邊中選擇
LeetCode 94. Binary Tree Inorder Traversal:非遞歸中序遍歷雙棧法詳解
題目大意 給定二叉樹根節點,返回其中序遍歷序列(左 → 根 → 右)。要求非遞歸實現。 核心思想:模擬遞歸調用棧 遞歸中序遍歷的調用棧狀態: 不斷向左深入,
UVA 572 Oil Deposits:八方向 DFS 計數油田連通塊
題目大意 給定 m×n (≤ 100×100) 網格,@ 表示油點,* 表示無油。八方向(水平、垂直、對角)相鄰的 @ 屬於同一油田。求油田數量。多測試用例,m
Geometry Made Simple:勾股定理求直角三角形未知邊長
問題描述 給定直角三角形三邊 a, b, c(c 為斜邊),其中一邊為 -1 表示未知,其餘為正整數。求未知邊長,保留三位小數。若無解輸出 Impossible
HDU 1024 Max Sum Plus Plus:DP 求 m 個不相交子段最大和
題目大意 給定長度 n (≤ 1,000,000) 的序列,選取 m 個不相交、非空連續子段,使其元素和總和最大。輸出最大和。多測試用例。 DP 狀態定義 d
HDU 3616 Best Reward:Manacher 算法求前綴/後綴回文最大權值和
題目大意 項鍊由 n (≤ 500,000) 顆寶石組成,26 種寶石各有價值 v[i] (可正可負)。需將項鍊切一刀分為兩段,每段若為回文則價值為寶石值之和,
Lua 學習筆記:選擇結構與循環語句全解析
前言 Lua 作為輕量級腳本語言,其控制流語法簡潔而強大。本文系統整理 條件選擇(if-elseif-else)與 循環結構(while、for、repeat-
C++ 虛函數表指針 (vptr) 與虛表 (vtable) 深度解析
前言 C++ 通過虛函數表實現動態多態。理解 vptr/vtable 機制,有助於掌握對象模型、多態調用開銷、以及調試時的內存佈局分析。本文結合圖示與代碼實驗,
POJ 1655 平衡因子 / 樹的重心:樹形 DP 求解
題目大意 給定 n (≤ 20,000) 節點的樹,刪除任一節點後形成森林。該節點的平衡因子定義為森林中最大樹的節點數。求平衡因子最小的節點(重心),若多解輸出
UVA 657:The die is cast - 雙層 DFS 統計骰子點數
題目背景 輸入一幅包含多個骰子的圖像(字符矩陣),背景 .,骰子 *,點 X。連通定義為四向相鄰。每個骰子為一個最大連通塊(含點),每個點為骰子內部的最大連通塊
LeetCode 137. Single Number II:位運算狀態機解法詳解
題目大意 整數數組中,只有一個元素出現一次,其餘元素均出現三次。找出那個唯一的元素。要求 O(n) 時間、O(1) 空間。 核心思想:有限狀態機(FSM) 對
HDU 3068 最長回文:Manacher 算法模板題詳解與代碼
題目大意 多組測試用例,每行一個小寫字母字符串 S (len ≤ 110,000),空行分隔。輸出每組字符串的最長回文子串長度。純長度查詢,無需輸出子串本身。
HDU 3294 Girls' Research:Manacher 算法求最長回文子串(含字符映射變換)
題目大意 給定字符 ch 和字符串 s,將 ch 視為 a,其他字符循環偏移(如 ch=b 時 a→z, b→a, c→b...)。對變換後的字符串,求長度 ≥