CodingMan.cc

Code Your True Nature

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

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

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

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

針對 LeetCode 第 2075 題,本篇筆記介紹了傾斜轉置密碼(Slanted Transposition Cipher)的解密過程。解題的核心在於直接模擬轉換邏輯,並透過操作索引而非頻繁更動字串內容,來優化執行速度。對於對古典密碼學模擬感興趣的讀者,這是一篇不錯的實作參考。

在這篇 LeetCode 第 1921 題的筆記中,我們探討了如何在怪物抵達堡壘前盡可能地將其消滅。解題關鍵在於預先計算每個怪物的到達時間並進行排序,以此制定最佳的攻擊順序。本文透過淺顯易懂的邏輯,帶領讀者掌握貪婪演算法在實戰中的應用。

詳解 Python 內建的 bisect 模組,這是一個專門處理二元搜尋與維持串列排序狀態的強大工具。本文介紹 bisect_left、bisect_right 以及 insort 等函數用法,幫助您在開發時更有效率地操作排序資料。

介紹二元搜尋 (Binary Search) 的核心概念與演算法實作。二元搜尋適用於已排序陣列,其時間複雜度為 O(log n),效率遠高於線性搜尋。本文深入淺出說明搜尋流程與邊界處理細節。

0%