本次自主學習以 LeetCode 演算法題目為主軸,透過 30 天的連續實作,學習常見的資料結構與演算法,例如陣列、雜湊表、鏈結串列、堆疊、佇列、樹、搜尋、排序、動態規劃等。每個單元將選擇一個 LeetCode 題目,分別使用 Java 與 Python 實作,整理解題思路、程式碼及時間與空間複雜度,並比較兩種程式語言在語法、實作方式與解題上的差異。希望透過持續練習提升程式設計、問題分析與演算法思考能力,並累積實際撰寫程式與解決問題的經驗。
一、題目介紹今天要練習的題目是LeetCode 733:Flood Fill 題目會給我們一個二維圖片image,每個位置代表一個像素的顏色,另外給定起始位置(...
一、題目介紹今天要練習的題目是LeetCode 200:Number of Islands 題目會給我們一個由1和0組成的二維grid 1代表陸地 0代表...
一、題目介紹今天要練習的題目是LeetCode 78:Subsets(子集) 題目會給我們一個不包含重複元素的整數陣列nums,需要找出這個陣列所有可能的子集...
一、題目介紹今天要練習的是LeetCode 46:Permutations(全排列) 題目給定一個沒有重複元素的整數陣列nums,要求找出所有可能的排列方式 例...
一、題目介紹今天要練習的是 LeetCode 39:Combination Sum(組合總和) 題目給定一個由不同整數組成的陣列candidates,以及一個目...
一、題目介紹今天要練習的是LeetCode 215:Kth Largest Element in an Array 題目給定一個整數陣列nums和一個整數k,要...
一、題目介紹今天要練習的是LeetCode 347:Top K Frequent Elements 題目給定一個整數陣列nums,以及一個整數k,要求找出陣列中...
一、題目介紹今天要練習的是LeetCode 3:Longest Substring Without Repeating Characters 題目要求給定一個字...
一、題目介紹今天要練習的是LeetCode 146. LRU Cache LRU是Least Recently Used的縮寫,意思是「最近最少使用」 題目要求...
這次的 30 天自主學習,我選擇以 LeetCode 作為主要練習平台,並使用 Java 和 Python 兩種程式語言進行實作。會選擇這個主題,是因為平常在學...