LeetCode 198 HouseRobber;213 HouseRobber II

问题描述:

思路:动态规划,申请dp数组记录,dp【0】是nums【0】, dp【1】是nums【0】和nums【1】中的较大值。

问题描述:

思路:加了个条件,首尾构成环形

怎么处理比较好:申请两个dp数组,分为两次动态规划

第一次规划,不选nums【0】,所以末尾可以选,可以不选,结果是

max(dp1[nums.length-2],dp1[nums.length-1])

第二次规划,必选nums【0】,所以末尾一定不选,结果是

dp2[nums.length-2]

返回值:取三者里的最大值。

猜你喜欢

转载自blog.csdn.net/susuxuezhang/article/details/88956062
今日推荐