LeetCode 121. Best Time to Buy and Sell Stock:單次交易最大利潤
問題描述 給定每日股價數組,僅允許一次買入一次賣出(買在賣前),求最大利潤。無利潤返回 0。 例:[2,4,6,1,3,8,3] → 在 1 買入、8 賣出,利
LeetCode 9. Palindrome Number:無額外空間判斷回文數
問題描述 判斷整數是否為回文數。負數非回文;不允許使用額外空間(即不可轉字符串)。 數學反轉法 逐位提取數字構建反轉數,比較與原數是否相等: public b
POJ 1691 Painting A Board:DFS+拓撲排序最小刷子拾取數
問題建模 N≤15 個矩形,每個有預設顏色 1..20。矩形塗色規則: 1. 僅當正上方所有相鄰矩形已塗色才能塗色(避免顏料向下流混色) 2. 同色矩形可一次拾
STL 容器 forward_list 完整操作指南:單向鏈表高效用法
容器特性 forward_list(C++11)實現單向鏈表,<forward_list>。特點: 任意位置 O(1) 插入/刪除,不支援隨機訪問
LeetCode 338. Counting Bits:線性時間位計數動態規劃
問題描述 給定非負整數 num,返回長度 num+1 的數組,第 i 個元素為 i 的二進制中 1 的個數。要求 O(n) 時間、O(n) 空間、單次遍歷、不使
C++連接SQL Server 2008完整配置指南與ADO代碼實戰
SQL Server 2008 服務端配置 1. 啟用核心服務 SQL Server 配置管理器 → SQL Server 服務 → 啟動 SQL Serve
HDOJ 1393 Weird Clock:模擬與數學規律解題
問題理解 時鐘刻度 0-59,僅有分針。投入標記 d (1≤d≤1000) 的硬幣,分針順時針移動 當前時間 × d 分鐘。給定初始時間 s (1≤s≤59)
C++動態庫生成與調用全攻略:從隱式到顯式、從修飾名到.def
動態庫生成三種方式 1. __declspec(dllexport) 直接導出 // dllTest.cpp __declspec(dllexport) in
POJ 2948 Martian Mining:棋盤型動態規劃解法
問題建模 n×m 矩陣(n,m ≤ 500),每格含兩種礦產:yeyenum(西向運送)與 bloggium(北向運送)。每格只能建一種輸送帶,礦產必須直線運送
LeetCode 8. String to Integer (atoi):C++完整實現與邊界處理
問題描述 實現 C++ atoi:忽略前導空格,識別正負號,解析數字直到非數字字符,處理 32 位有符號整數溢出([-2^31, 2^31-1])。 核心邏輯
LeetCode 38. Count and Say:外觀數列生成演算法
問題描述 外觀數列從 1 開始,每一項描述前一項:1 → 11 → 21 → 1211 → 111221...。給定 n,生成第 n 項字符串。 核心演算法
C++菱形繼承與虛繼承記憶體模型深度解析
菱形繼承問題 菱形繼承(鑽石繼承)指兩個派生類繼承同一基類,再由底層類繼承這兩個派生類。若無虛繼承,底層類會包含兩份基類副本,導致數據冗余與二義性: class
Effective C++ 核心條款精華筆記整理
資源管理與類設計 條款1:以 const、enum、inline 替換 #define 常量定義優先使用 const 或 enum,函數宏改用 inline 函
POJ 2411 Mondriaan's Dream:狀態壓縮DP經典解法
問題描述 給定 h × w 的矩形(1 ≤ h, w ≤ 11),求用 2 × 1 小矩形完全鋪滿的方案數。輸入以 0 0 結束,對稱方案重複計算。 狀態壓縮
C++實現分離鏈接法散列表:完整原理與代碼詳解
散列表核心概念 散列表是一種以常數平均時間複雜度實現插入、刪除和查找操作的數據結構。其核心思想是透過散列函數將鍵值映射到固定大小數組的索引位置,通常表大小取質數
Java String 類核心方法大全:轉換、查找、截取、分割、替換與比較實戰
java.lang.String 是不可變字符序列,提供豐富實例方法。本文分類匯總高頻 API,附可運行示例代碼與輸出,適合速查與面試複習。 1. 字符串與字
C++ 虛函數深度解析:多態實現、虛析構、純虛函數與抽象類
虛函數是 C++ 運行時多態的核心機制。通過 virtual 關鍵字聲明,配合基類指針/引用指向派生類對象,實現「同一接口,不同行為」。本文從底層實現原理到工程