【LeetCode笔记】剑指 Offer 47. 礼物的最大价值(Java、动态规划)
生活随笔
收集整理的這篇文章主要介紹了
【LeetCode笔记】剑指 Offer 47. 礼物的最大价值(Java、动态规划)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 題目描述
- 思路 && 代碼
- 1. 常規動規 O(n2n^2n2) 、O(n2n^2n2)
- 2. 滾動數組法 O(n2n^2n2) 、O(nnn)
- 原地操作O(n2n^2n2) 、O(111)
題目描述
- 一眼動態規劃啦~
思路 && 代碼
1. 常規動規 O(n2n^2n2) 、O(n2n^2n2)
- dp[i][j]: 對應位置 grid[i - 1][j - 1] 為終點,可得到的最多禮物
- dp[][] 外包圍一層,省去邊界判斷~
- 核心思想:從左邊、上邊選擇最大值即可
2. 滾動數組法 O(n2n^2n2) 、O(nnn)
- 通過滾動數組的方法,可以節約空間復雜度!
- 時間復雜度是不變的~
- 之所以可以使用滾動數組的方法,是因為維護當前行,只需要前一行的值,而與再往前的行數無關
原地操作O(n2n^2n2) 、O(111)
- 多多少少有點小簡潔了,直接在原數組上操作即可
總結
以上是生活随笔為你收集整理的【LeetCode笔记】剑指 Offer 47. 礼物的最大价值(Java、动态规划)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【LeetCode笔记】剑指 Offer
- 下一篇: css鼠标变成小手_技巧篇:CSS高级技