iT邦幫忙

鐵人檔案

2022 iThome 鐵人賽
回列表
Software Development

從零開始的LeetCode生活,使用Kotlin學習刷題 系列

LeetCode已經是面試的一大難關,考驗面試者的邏輯思維與結構設計功底,我們將使用Kotlin語言來進行LeetCode的挑戰.

DAY 1

Day 1 : 前言

Hi,又是我.在去年結束鐵人賽時,我心裡想: 這種瘋狂的事情我絕對不要再做一次了.一次就夠了吧 結果不知不覺中又被團長拉進了坑.當我還在想開賽時間還久呢,就已...

2022-09-07 ‧ 由 yuli 分享
DAY 2

Day 2 :動態規劃基礎

動態規劃基礎 這篇是書中1-2節 動態規劃(Dynamic Programming)的問題時許多人的難關,因為動態規劃的問題通常不是很直觀,解題的思路也有需...

2022-09-08 ‧ 由 yuli 分享
DAY 3

Day 3: 費波那契數列

費波那契算是經典的遞迴問題,其定義為 F0=0,F1=1,Fn=Fn-1+Fn-2(n>=2,n∈N*) 也就是在第二項以後,所有的值為前兩項的相加....

2022-09-09 ‧ 由 yuli 分享
DAY 4

Day 4: 有Memo的演算法

在昨天我們發現了,我們執行了很多重複的運算,下面的圖同樣的顏色就是同樣的數據. 那有沒有辦法減少重複的計算呢.這就是我們今天的重點了,Memo. 當如果Mom...

2022-09-10 ‧ 由 yuli 分享
DAY 5

Day 5: DP Table解法

昨天的Memo版本,是從上而下的,也就是我們從N開始,一路計算N-1,N-2...一直到1的過程. 那我們轉換個思路,如果我們是從1,2,3...一路算到N呢....

2022-09-11 ‧ 由 yuli 分享
DAY 6

Day 6:湊零錢問題

湊零錢問題是這樣的: 給出K種硬幣,他們的數值分別是C1,C2,C3...CK,每種硬幣的個數都不限. 然後給出一個總數Amount,使用最少的硬幣湊出這個Am...

2022-09-12 ‧ 由 yuli 分享
DAY 7

Day 7 : 湊零錢問題 優化版

來看看昨天的遞迴圖 可以注意到兩個特點 1.在湊4元的時候,使用5元硬幣的狀態可以忽略 2.跟費波那契有同樣的狀況,有許多狀況可能被重複計算… Memo版本...

2022-09-13 ‧ 由 yuli 分享
DAY 8

Day 8 : 回溯演算法

今天開始我們來講回溯演算法,聽名字好像很厲害,但其實也只是動態規劃問題的一種解法. 要使用回溯演算法,就是一個決策樹的尋訪過程. 而構成一個決策樹有以下幾個重點...

2022-09-14 ‧ 由 yuli 分享
DAY 9

Day 9 : N皇后問題

西洋棋的皇后,可以直走,橫走,或是斜走.是西洋棋中最為強力的一枚棋子.在正式的規則中只有一個. 而著名的的八皇后問題,則是要在一個標準的西洋棋盤上,放下八個皇后...

2022-09-15 ‧ 由 yuli 分享
DAY 10

Day 10 : BFS演算法

深度優先搜尋(Depth-First Search,DFS)與廣度優先搜尋(Breadth-First Search, BFS)是兩種特別常用的演算法,DFS演...

2022-09-16 ‧ 由 yuli 分享