LeetCode 筆記 - Count Sorted Vowel Strings
計算長度為 n 且按字典序排列的母音組合數量。作者跳出傳統遞迴,運用高中數學的「隔板法」將問題轉化為組合公式。透過 O(1) 的數學運算直接求出解答,展示了數學建模在解決計算問題時的極致效率。
計算長度為 n 且按字典序排列的母音組合數量。作者跳出傳統遞迴,運用高中數學的「隔板法」將問題轉化為組合公式。透過 O(1) 的數學運算直接求出解答,展示了數學建模在解決計算問題時的極致效率。
LeetCode 第 7 題解析,要求將一個 32 位元的有號整數進行反轉。本文分享如何透過基礎的數學運算處理位元反轉,並特別提醒開發者注意反轉後可能產生的數值溢位(Overflow)問題,確保結果符合 32 位元整數的範圍限制。
實作 C 語言中的 strstr() 函數,尋找子字串出現的起始索引。本文採取直覺且高效的模擬遍歷方式,在 O(N) 複雜度內完成字串匹配。這是一篇掌握基本字串搜尋邏輯與邊界處理的開發隨筆。
挑戰尋找最長迴文子字串。本文深度解析 Manacher 演算法,透過對稱性質避免重複比較,將搜尋時間從 O(N^2) 優化至線性 O(N)。文中詳述演算法的推導過程與實作細節,是理解進階字串演算法的首選筆記。
在兩個已排序數列中尋找合併後的中位數。本文分享如何透過部分合併的技巧,僅遍歷至中位數所需長度即可得出解答。這種優化策略能有效控制計算量,在維持 O(N) 線性複雜度的同時,提升求取中位數的速度。
尋找最長不重複子字串的長度。本文解析滑動視窗(Sliding Window)配合哈希表(Map)的優化策略。透過記錄字元與其最後出現索引,能動態調整視窗起點,在單次遍歷中精確計算出最大不重複區段,大幅提升效率。
解析如何相加兩個以反序鏈結串列表示的龐大整數。本文引導讀者依序處理進位邏輯,並同步建立新的鏈結串列來存儲結果。這是一篇掌握基本鏈結串列操作與大數運算模擬邏輯的經典實作筆記。
針對 LeetCode 第 1 題,探討如何在數列中快速找出相加等於目標值的兩個數字。本文解析如何運用哈希表(Hash Map)記錄已遍歷過的數字及其索引,將搜尋複雜度從暴力解的 O(N^2) 優化至線性 O(N),是理解空間換取時間的經典案例。
為了在進入公共場所時能快速出示「社交距離 app」,本文分享一個簡單的 iOS 捷徑配置。透過連結下載並安裝,使用者可一鍵啟動 app,跳過繁瑣的手動尋找過程,並提供處理「不信任來源」問題的設定建議。
在使用 PyCharm 瀏覽大型 JSON 檔案時,常因超過預設大小限制而導致語法上色失效。本文教學如何透過編輯自定義屬性設定,手動解開 idea.max.intellisense.filesize 的束縛,讓開發者能流暢地處理與閱讀大體積資料檔。