Objective-C 陣列 NSArray 與 NSMutableArray 完整操作指南
NSArray:不可變陣列 建立與初始化 NSArray *arr = [NSArray arrayWithObjects:obj1, obj2, obj3,
XOR 異或加密演算法 C 語言實作詳解
核心原理 異或運算(^)具備自逆性:A ^ B ^ B = A。因此同一把金鑰既可加密也可解密。 char encrypt(char f, char c) {
HDU 4738 解題報告:雙連通分量尋找橋(割邊)
題目大意 有 n 個島嶼,曹操在島之間建橋,每座橋有士兵把守。周瑜只有一顆炸彈,需派士兵運送炸彈炸毀一座橋。士兵數量不得少於該橋守衛數。求最少需派多少士兵。 轉
設計模式精解:工廠方法模式與 C++ 模板實作
模式意圖 工廠方法模式屬於創建型模式,核心在於定義一個建立物件的介面,讓子類別決定實例化哪個具體類別。藉此將「產品」與「產品實作」解耦,客戶端僅依賴抽象介面,不
C++ 繼承與派生核心觀念:從馬、公馬到白公馬
繼承:物件導向的精華 面向物件四大特性——抽象、封裝、繼承、多態——中,繼承被視為核心。它讓我們能在既有類別基礎上擴充新功能,避免重複撰寫程式碼。 直觀範例:
前置遞增 ++i 與後置遞增 i++ 效能大比拚
核心結論 內建型別(int、float 等): 效能完全相同,現代編譯器會優化成相同機器碼。 自訂類別(類別型別): ++i(前置)優於 i++(後置),因後
C++ 派生類構造函數:含子對象時的初始化寫法詳解
前言 在 C++ 繼承體系中,派生類的構造函數不僅要負責初始化基類部分,還需處理自身新增的資料成員。當類別的資料成員本身也是類別對象(即「子對象」或「內嵌對象」
HDU 網絡賽杭州站 1003:驢與虎的網格追逐模擬
HDU 網絡賽 1003:驢虎網格追逐模擬 N×N 網格,驢和虎從給定位置、方向出發。規則: 直線前進,不能出界,不能進入自己走過的格子。 無法前進時:驢右轉
字符串反轉的五種實現方法:從遞歸到位運算
字符串反轉五法:C/C++ 經典實現對比 輸入字符串,輸出反轉後的字符串。展示五種不同思路的實現。 方法一:遞歸交換首尾 char *reverse1(cha
UVA 1292 Strategic Game:樹形 DP 求最小點覆蓋
UVA 1292 Strategic Game:樹上最小點覆蓋問題 給定一棵樹,在節點放置士兵,每條邊至少有一端點有士兵。求最少士兵數。 樹形 DP 狀態
求最大遞增子串:連續數字遞增序列的最長片段
最大遞增數:查找最長連續嚴格遞增數字子串 輸入數字字符串,輸出其中最長的連續嚴格遞增子串。如 `1231123451` → `12345`。 算法邏輯 單次
有序數組雙指針查找:兩數之和等於目標值 O(n) 算法詳解
題目描述 給定一個已排序數組(遞增)及一個目標值 k,判斷是否存在兩個元素之和等於 k,若存在輸出該對數值。 核心思想:雙指針對撞 利用有序性: 設左指針 L
C++ 文件流 fstream 完整指南:從基礎操作到 STL 解析實戰
fstream 體系概覽 類用途繼承自 fstream讀寫文件iostream ifstream只讀文件istream ofstream只寫文件ostream
iOS 開發:調用相機與相冊選擇圖片並保存至沙盒完整教程
功能概覽 實現類似微博發帖界面:點擊按鈕彈出操作表 → 選擇「拍照」或「從相冊選擇」 → 獲取圖片 → 轉為二進制數據 → 保存至 App 沙盒 Documen
POJ 3740 DLX:Dancing Links 解決精確覆蓋問題模板詳解
題目大意 給定 n×m 的 01 矩陣,問能否選擇若干行,使得每一列恰好有一個 1。即經典精確覆蓋問題,輸出 Yes, I found it 或 It is i
HDU 4738 杭州網賽:雙連通分量與橋的判定完整解析
題目大意 有 n 個島,m 條橋,每條橋有士兵把守。周瑜有一枚炸彈,需士兵搬運,士兵數不少於橋上守衛數。只能炸一座橋,求最少派遣士兵數使曹操勢力分裂(即圖不連通
POJ 3259 Wormholes:Bellman-Ford 判斷負環經典應用
題目大意 有 n ≤ 500 塊田,m 條雙向路(耗時 0),k 個單向蟲洞(耗時 -t,即時間倒流)。問是否存在從某田出發,經過一系列路徑後回到起點,且總時
POJ 2686 Traveling by Stagecoach:狀態壓縮 DP + SPFA 求最短時間
題目大意 有 n ≤ 30 個城市,m 條雙向道路(長度 w)。你有 t ≤ 8 張馬車票,每張票有速度 speed[i]。每條路必須消耗一張未用過的票,耗時