CodingMan.cc

Code Your True Nature

針對 LeetCode 第 1838 題,本篇筆記介紹了如何結合排序與滑動視窗(Sliding Window)技術來解決頻率相關問題。透過維護一個動態視窗,並利用剩餘的增加次數來填滿視窗內的差異,讀者可以學會如何高效地找到陣列中出現次數最多的元素組合。

本文分享了 LeetCode 第 1930 題的解題心得。雖然題目涉及子序列與迴文,看似複雜,但透過分析長度為 3 的迴文特性,我們可以簡化問題:只需找出每個字元的第一個與最後一個出現位置,並統計其中間不重複的字元數量。這是一種既直覺又高效的實作方式。

在這篇 LeetCode 第 2785 題的筆記中,我們探討了如何針對字串中的母音進行局部排序。解題思路相當直觀:先將所有母音提取出來並依 ASCII 順序排好,再重新填回原字串的母音位置。本文透過簡明的 Python 實作,示範了如何優雅地處理這類字串操作問題。

分析 LeetCode 97 題,判斷字串是否由另外兩個字串交錯組成。本文探討深度優先搜尋 (DFS) 搭配記憶化搜尋,以及動態規劃 (DP) 的解決方案,逐步拆解子問題並驗證字串組成可能性。

本文實作了 LeetCode 第 2642 題,重點在於如何在帶權重的圖形(Graph)中計算最短路徑。作者詳細介紹了 Dijkstra 演算法的應用,並分享了如何透過快取技術來提升連續查詢的效率。這對於準備軟體工程師面試、強化圖形演算法基礎的讀者極具參考價值。

介紹 Python 內建的 heapq 模組,其基於二元堆積實作了最小堆積 (Min Heap) 資料結構。本文說明 heappush、heappop 與 heapify 等常用函數,並探討堆積在優先權佇列中的應用場景。

LeetCode 第 1446 題解析,尋找字串中最長的連續單一字元長度。本文採取直覺的線性掃描策略,透過一次遍歷並動態比對前後字元,精確掌握連續區段的最大值。這是一篇鍛鍊基礎字串處理與計數邏輯的入門練習。

本文探討了 LeetCode 第 1759 題,目標是計算字串中所有由相同字元組成的子字串總數。作者提醒讀者避免使用效率低下的深度優先搜尋,並分享了基於數學公式的常數時間複雜度解法,幫助讀者在處理大數據時能優雅地產出正確答案。

0%