设置网站字体,药企做网站需要哪些手续,张家港外贸型网站制作,wordpress 启动live2d前言
###我做这类文章一个重要的目的还是给正在学习的大家提供方向#xff08;例如想要掌握基础用法#xff0c;该刷哪些题#xff1f;建议灵神的题单和代码随想录#xff09;和记录自己的学习过程#xff0c;我的解析也不会做的非常详细#xff0c;只会提供思路和一些关…前言
###我做这类文章一个重要的目的还是给正在学习的大家提供方向例如想要掌握基础用法该刷哪些题建议灵神的题单和代码随想录和记录自己的学习过程我的解析也不会做的非常详细只会提供思路和一些关键点力扣上的大佬们的题解质量是非常非常高滴 习题
1.打家劫舍II
题目链接:213. 打家劫舍 II - 力扣LeetCode
题面:
分析:这题主要难点在于最后一个和第一个的考虑上我这边解决麻烦了点但更好理解用两个数组分别表示第一个选了和第一个没选
代码:
class Solution {public int rob(int[] nums) {int n nums.length;if(n1)return nums[0];int[][] flag new int[n][2];int[][] flag2 new int[n][2];flag[0][0] 0;flag[0][1] nums[0];flag2[0][0] 0;flag2[0][1] 0;for(int i 1;in;i){flag[i][0] Math.max(flag[i-1][1],flag[i-1][0]);flag[i][1] flag[i-1][0]nums[i];flag2[i][0] Math.max(flag2[i-1][1],flag2[i-1][0]);flag2[i][1] flag2[i-1][0]nums[i];}return Math.max(flag[n-1][0],Math.max(flag2[n-1][0],flag2[n-1][1]));}
} 后言
上面是动态规划相关的习题共勉