[LeetCode] Word Ladder II:BFS 構建前驅圖 + DFS 回溯輸出所有最短路徑
問題描述 給定起始詞 start、目標詞 end 和字典 dict,每次只能改變一個字母且中間詞必須在字典中。求所有從 start 到 end 的最短變換序列。
PAT 1031 Hello World for U:構造 U 字形輸出字符串
問題描述 給定長度 N (5≤N≤80) 的字符串,將其按 U 字形輸出:左竖線從上到下 n1 字符,底橫線從左到右 n2 字符,右竖線從下到上 n3 字符。要
POJ 1302 Blue Gene, Jr.:遞歸模擬病毒基因突變規則
問題描述 給定長度 N (≤20) 的字母數字串(大寫字母 A-Z 或數字 0-9),按規則反覆突變直到穩定: 當前段首字符為字母:突變為其右側段發生突變的總
LeetCode Candy:雙向掃描動態規劃解糖果分配問題
問題描述 N 個孩子站成一行,每個孩子有評分 ratings[i]。分配糖果規則: 每個孩子至少 1 顆糖果。 評分更高的孩子必須比相鄰孩子獲得更多糖果。
設計模式——Strategy 模式:從工廠模式到策略模式的演進與實戰
模式定義 Strategy(策略模式):定義一系列算法,將每個算法封裝起來,使它們可以相互替換。本模式使算法的變化獨立於使用算法的客戶端。 案例背景:商場收銀
C++ 面向對象編程核心筆記:多態、虛函數、繼承與訪問控制
面向對象三大支柱 數據抽象:通過 class 封裝數據與操作。 繼承:基類/派生類機制,實現代碼復用與擴展。 動態綁定:虛函數 + 基類指針/引用,運行時確定
LeetCode Minimum Path Sum:網格最小路徑和動態規劃
題目大意 給定一個 m × n 的非負整數網格,從左上角 (0,0) 走到右下角 (m-1, n-1),每步只能向右或向下移動。求路徑上數字和的最小值。 動態
POJ 2923 Relocation:狀態壓縮 DP 解決搬運問題
問題描述 有 n(≤ 10)件物品,每件有重量 a[i]。兩輛載重分別為 m1、m2 的卡車,每次可裝載任意子集,要求子集總重 ≤ m1 且剩餘重量 ≤ m2(
C++ 實現 DLL 注入其他進程完整指南
原理概述 DLL 注入是將動態鏈接庫強制加載到目標進程地址空間並執行其代碼的技術。核心思路利用 Windows API: 在目標進程中分配內存,寫入 DLL
HDU 4749 Parade Show:KMP 算法變形求最佳觀賞隊列數
問題背景 HDU 4749 Parade Show 是一道經典的 KMP 算法變形題。問題要求從 n 名身高各不相同的學生(身高值 1~k,k ≤ 25)中選出
C 語言輸入輸出函數詳解:字符與字符串讀寫細節
概述 C 標準庫提供了豐富的輸入輸出函數,針對字符和字符串的讀寫有多種選擇。理解它們的行為差異、返回值以及邊界條件,對於編寫健壯的 C 程序至關重要。本文系統整
C++ 異常處理深度解析 (一):Itanium ABI、堆棧展開與 personality routine
異常處理的生命週期 C++ 異常拋出後,若當前函數無匹配 catch,沿調用鏈向上傳播,直到找到處理器或調用 std::terminate()。進入 catch
UVa 10229 Modular Fibonacci:矩陣快速冪求模意義下的費波那契數
問題描述 費波那契數列定義:F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2)。給定 n, m (m ≤ 2^31-1),求 F(n) mod
判斷穩定凸包:POJ 1228 另一種極角排序與邊上點檢測實現
題目核心 給定凸包上的所有點(頂點+邊上點),判斷凸包是否「穩定」。穩定定義:無法在原凸包外添加點使其仍為凸包且包含所有原點。等價於:凸包每條邊上至少有三個點(
[POJ 1128] Frame Stacking:拓撲排序全序列輸出與矩形覆蓋關係建模
題目大意 在 9×8 的網格上有若干大寫字母組成的矩形框(每種字母一個矩形)。後放置的框會覆蓋先放置的框。給定最終疊加後的圖像,求所有可能的放置順序(拓撲序),
[HOJ] HIT's Powerstation:最短路徑與 Dijkstra 算法優化實現
問題描述 給定一個無向加權圖(頂點數 v ≤ 100,邊數 e),每條邊代表電線長度。電站建在某頂點,損耗定義為所有其他頂點到該頂點的最短路徑長度之和。求損耗最
POJ 1228 Grandpa's Estate:凸包唯一性判斷與多邊形模板詳解
題目背景 給定平面上 n 個點(釘子),判斷這些點能否唯一確定一個凸多邊形的邊界。若凸包邊上至少有三個點(含兩端點),則邊界唯一;若某邊僅有兩個端點,則可在邊上
C++ 編程風格:從通天塔到代碼規範的思考
引言:什麼是編程風格? 白居易寫詩讓老婆婆聽,聽不懂就改;代碼通俗易懂,這才是風格。讀歷史課本有一股馬列氣息;代碼前後一致,這才是風格。風格的本質是降低認知負荷