日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Leetcode中Path的题目总结

發布時間:2025/3/18 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Leetcode中Path的题目总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Matrix中的path問題:
62.Unique Paths
63.Unique Paths II
這兩題是典型的dp問題,要求一共有多少種方案。分析狀態f(i, j)是走到(i, j)總共的路徑。它可以由前面兩個狀態得到,即f(i, j)=f(i - 1, j) + f(i, j - 1)。最后注意邊界值即可。變形是有設obstacle, 那么遇到obstacle的時候,把當前可行路徑設為0即可。

64.Minimum Path Sum
這一題在上一題的基礎上變形,之前要求path個數,現在要求minimum sum。同樣分析狀態f(i, j)是走到(i, j)時的最小sum。它可以由前面兩個狀態得到,即f(i, j)=min(f(i - 1, j), f(i, j - 1)) + value(i, j)。還是注意邊界值就可以了。

174.Dungeon Game
這一題有點思維上有些跳躍,但萬變不離其宗。我要保證它不死,就要保證最后走完至少還剩下一滴血。所以從后往前計算會比較方便。當遇到需要血量小于1的時候,我們還是按1來算,因為是反過來算,所以不管當前這一次可以給我們加多少血量,之前那一步的算完的時候,到少來行有1。

329.Longest Increasing Path in a Matrix
這是一個DFS的問題,我要求最長增長路徑,那我就得每個點都試一下。優化是當我走到一個點時,我如果已經計算過這個點,那么我就把計算好的值存起來。如果有一個點在計算最長增長路徑時經過這個點,就可以直接用存好的值,而不是再計算一遍。

361.Bomb Enemy
這個問題最重要是關注新起一行或者一列和當w出現的時候,從開始到w出現之前,每個同一行,同一列的數遇到的enermy都是相同的,但是當w出現隔斷之后,我們就必須重新計算從w開始,到下一個w之間有多少enermy了。

Binary Tree中的path問題
112.Path Sum
113.Path Sum II
這兩個一個就boolean, 一個要求輸出所有結果。相同點是都到從上向下掃出結果,不同點是boolean掃到一個正解就可以返回true,可以用dfs,而另一個要把所有的都掃一遍,存到結果中輸出,典型的dfs + backtracking問題。

124.Binary Tree Maximum Path Sum
這不是用dfs做,分兩種可能,一種可能是一個single path中出現了最大和,另一種可能是左右子樹和母節點共同構成最大和。就這兩種情況分別計算。
257.Binary Tree Paths
這就是個dfs問題。

總結

以上是生活随笔為你收集整理的Leetcode中Path的题目总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。