NYOJ 285 尋找克隆人:哈希表與計數解法詳解
題目背景 美國某小鎮遭外星人襲擊,部分居民被克隆。科學家提取了鎮上居民的 DNA 序列,要求找出擁有相同克隆個數的 DNA 序列數量。例如給定 9 個序列: A
C++ 算法精講:判斷平衡二叉樹與構造鏡像二叉樹(遞歸與優化)
C++ 算法精講:判斷平衡二叉樹與構造鏡像二叉樹(遞歸與優化) 1. 判斷平衡二叉樹 方法一:自頂向下(重複遍歷,O(n log n) ~ O(n^2)) r
NYOJ 420 p 次方求和:快速冪取模 + 同餘定理優化
NYOJ 420 p 次方求和:快速冪取模 + 同餘定理優化 求 S = 1^p + 2^p + ... + n^p (mod 10003),n ≤ 1000,
HDU 1232 暢通工程:並查集求最少邊數連通圖(生成樹邊數)
HDU 1232 暢通工程:並查集求最少邊數連通圖(生成樹邊數) 給定 n 個城市,m 條已建道路。問至少還需建多少條路使所有城市連通(即連通分量數 - 1)。
HDU 1213 How Many Tables:並查集統計連通分量(桌子合併)
HDU 1213 How Many Tables:並查集統計連通分量(桌子合併) n 張桌子,m 次合併操作(兩張桌子合為一組)。問最終有多少組桌子(連通分量數
正則匹配 div 中 a 標籤 href 與內容:PHP preg_match_all 實戰與數據清洗
正則匹配 div 中 a 標籤 href 與內容:PHP preg_match_all 實戰與數據清洗 從 HTML 片段中提取特定 div 內所有 a 標籤的
UVA 133 The Dole Queue:循環鏈表模擬雙向計數出列
UVA 133 The Dole Queue:循環鏈表模擬雙向計數出列 n 人圍圈,逆時針編號 1~n。A 從 1 逆時針數 k,B 從 n 順時針數 m。兩人
C/C++ 指針進階:指針數組、數組指針、函數指針、多級指針完整解析
C/C++ 指針進階:指針數組、數組指針、函數指針、多級指針完整解析 指針是 C/C++ 核心也是難點。本文系統梳理各類指針聲明、內存佈局、堆分配方式與典型陷阱
POJ 2524 Ubiquitous Religions:並查集統計宗教派別數
POJ 2524 Ubiquitous Religions:並查集統計宗教派別數 n ≤ 50,000 學生,m 對關係表示同教。求最多可能有多少不同宗教(即連
NYOJ 253 LK的旅行:旋轉卡殼法求凸包直徑(最遠點對距離平方)
NYOJ 253 LK的旅行:旋轉卡殼法求凸包直徑(最遠點對距離平方) 給定 m ≤ 100,000 個平面點,求最遠兩點距離的平方。多測試用例,總點數大。
創建簡單線程:Windows CreateThread 與 POSIX pthread_create 對比
創建簡單線程:Windows CreateThread 與 POSIX pthread_create 對比 線程是進程內獨立調度單元。本文展示兩大平台創建線程的
數據結構基礎:雙向循環鏈表設計與實現(含迭代器、插入刪除、反向遍歷)
數據結構基礎:雙向循環鏈表設計與實現(含迭代器、插入刪除、反向遍歷) 雙向循環鏈表特點: 頭節點 first 的 next 指向首元素,prev 指向尾元素。
RPC 框架選型:RCF 替換 COM 實現跨平台分布式通信
RPC 框架選型:RCF 替換 COM 實現跨平台分布式通信 項目原大量使用 COM 接口導致鎖定 Windows。需去除 COM、支持 Linux、邁向分布式
C++ 為什麼需要 new:自動存儲 vs 動態存儲,生命週期控制的本質
C++ 為什麼需要 new:自動存儲 vs 動態存儲,生命週期控制的本質 核心區別在於誰負責內存釋放: 自動存儲(棧/局部變量) int n = 10;、V
Win32 系統信息獲取:GetSystemInfo 實戰與對話框展示
Win32 系統信息獲取:GetSystemInfo 實戰與對話框展示 調用 GetSystemInfo 獲取頁面大小、最小/最大應用地址、分配粒度等關鍵系統參
C 語言模擬 C++ 多態:虛函數表指針、構造函數鏈與手動調度
C 語言模擬 C++ 多態:虛函數表指針、構造函數鏈與手動調度 C++ 編譯器通過虛函數表 (vtable) 實現多態。本文展示如何用 C 手動構建等效機制。
Java Comparable vs Comparator:核心區別、使用場景與 TreeSet/TreeMap 應用
Java Comparable vs Comparator:核心區別、使用場景與 TreeSet/TreeMap 應用 兩者均用於對象比較,但定位不同: 特性
ZOJ 4846 GCD Reduce:數學構造證明與線性算法
ZOJ 4846 GCD Reduce:數學構造證明與線性算法 長度 n 數列,每次操作選兩數替換為其 GCD。問能否在 5n 步內全變為 1。 核心結論