LeetCode 筆記 - 160. Intersection of Two Linked Lists
挑戰尋找兩個鏈結串列的交會點。本文特別介紹神奇的「龜兔賽跑演算法」(Floyd Cycle Detection Algorithm),展示如何透過精巧的指標移動邏輯,在不需要額外空間的情況下,偵測出結構中的環或交會節點,是一篇探討指針美學的深度心得。
挑戰尋找兩個鏈結串列的交會點。本文特別介紹神奇的「龜兔賽跑演算法」(Floyd Cycle Detection Algorithm),展示如何透過精巧的指標移動邏輯,在不需要額外空間的情況下,偵測出結構中的環或交會節點,是一篇探討指針美學的深度心得。
分享如何在 Mac 系統中使用程式碼觸發系統通知(System Notification)。對於需要執行長時間程序的使用者,本文提供一套自動化提醒方案,讓程式在任務結束後主動通知開發者,有效節省等待時間並提升工作流程效率。
解析如何在靜態數列中快速進行多次區間總和查詢。本文介紹「前綴和」表格的建立與運算公式:透過預先計算累積和,讓每次查詢都能在 O(1) 時間內完成。這是一個優化重複性查詢需求的經典演算法實作範例。
將前綴和概念延伸至二維矩陣。本文引導讀者建立 2D Prefix Sum 表格,透過計算矩形區域的加減邏輯,達成任意子矩形總和的瞬間查詢。這是一篇掌握空間索引與高效率矩陣運算的高階技術分享。
LeetCode 矩陣轉置實作練習。本文教學如何將 2D 矩陣的行與列進行互換,是一篇關於矩陣基本操作與巢狀迴圈索引處理的基礎筆記。內容簡潔直觀,適合初學者鞏固對多維陣列結構的理解。
判定二進位字串是否包含所有長度為 k 的可能組合。本文分享利用集合(Set)存儲所有子字串的策略,並透過檢查集合長度是否達到 2^k 來快速得出結論。這是一篇掌握字串切片、集合運算與二進位組合邏輯的實用筆記。
解析「前綴和」(Prefix Sum)演算法的基礎應用。透過將數列中的每一項更新為前面所有項的累積和,能為後續的區間查詢提供極大的效率。本文透過這題簡單的實作,幫助讀者建立處理連續數列加總問題的核心思維。
實作不使用乘法與除法運算子的兩數相除。解題關鍵在於處理位元移位或連續減法,並特別關注整數溢位(Overflow)的邊界條件。這是一篇探討計算機底層運算邏輯與數值安全性處理的技術隨筆。
尋找不含相同字母的兩字串最大長度乘積。本文利用位元運算(Bitwise)進行加速,將字串的字母分佈壓縮成一個整數,透過 AND 運算即可秒速判斷是否有重複字母。這展示了位元技巧在優化字串比對任務上的強大威力。
在一個連續數列中找出缺少的那個數字。本文提供排序後線性掃描的直覺解法。雖然簡單,但它引導開發者思考如何透過數據結構的有序性來快速定位異常點,是處理數據完整性檢查的基礎訓練。