当前位置: 首页 > news >正文

提供免费服务器的网站怎么做电商平台网站

提供免费服务器的网站,怎么做电商平台网站,建工e采网,建设单位网站需求报告198.打家劫舍 题目链接#xff1a; 力扣#xff08;LeetCode#xff09;官网 - 全球极客挚爱的技术成长平台 求解思路#xff1a; 当前房屋偷与不偷取决于前一个房屋是否被偷了 动规五部曲 确定dp数组及其下标含义#xff1a;考虑下标i#xff08;包括i#xff09…198.打家劫舍 题目链接 力扣LeetCode官网 - 全球极客挚爱的技术成长平台 求解思路 当前房屋偷与不偷取决于前一个房屋是否被偷了 动规五部曲 确定dp数组及其下标含义考虑下标i包括i以内的房屋最多可以偷的金额为dp[i]确定递归公式如果前一个屋子被抢了那么现在这间屋子不能抢即dp[i] dp[i-1]如果前一间屋子没被抢那么这件屋子可以抢即dp[i] dp[i - 2] nums[i]取较大值dp[i] max(dp[i - 2] nums[i], dp[i - 1]);dp数组的初始化递推公式的基础为dp[0]和dp[1]从定义中可以得到dp[0] nums[0],dp[1]  max(nums[0], nums[1]);确定遍历顺序dp[i] 是根据dp[i - 2] 和 dp[i - 1] 推导出来的从前到后遍历举例推导dp数组以[2,7,9,3,1]为例如图 代码 class Solution { public:int rob(vectorint nums) {if (nums.size() 0) return 0;if (nums.size() 1) return nums[0];vectorint dp(nums.size(), 0);dp[0] nums[0];dp[1] max(nums[0], nums[1]);for (int i 2; i nums.size(); i){dp[i] max(dp[i-2]nums[i], dp[i-1]);}return dp[nums.size()-1];} }; 213.打家劫舍II 题目链接 力扣LeetCode官网 - 全球极客挚爱的技术成长平台 求解思路 分成两种情况一种是不包含头元素一种是不包含尾元素取较大值即可。 求解思路与上一题一样。 代码 class Solution { public:int rob(vectorint nums) {if (nums.size() 0) return 0;if (nums.size() 1) return nums[0];int r1 robRange(nums, 0, nums.size()-2);int r2 robRange(nums, 1, nums.size()-1);return max(r1, r2);}int robRange(vectorint nums, int start, int end){if (start end) return nums[start];vectorint dp(nums.size());dp[start] nums[start];dp[start1] max(nums[start], nums[start1]);for (int i start2; i end; i){dp[i] max(dp[i-2]nums[i], dp[i-1]);}return dp[end];} }; 337.打家劫舍III 题目链接 力扣LeetCode官网 - 全球极客挚爱的技术成长平台 求解思路 使用一个长度为2的数组记录当前节点偷和不偷所得到的最大金钱 递归动规 确定递归函数的参数和返回值参数为当前节点返回值为一个长度为2的数组其中数组下标为0记录不偷该节点所得到的最大金钱下标为1记录偷该节点所得到的最大金钱确定终止条件遇到空间点无论偷还是不偷都是0返回确定遍历顺序后序遍历二叉树因为要通过递归函数的返回值来做下一步计算确定单层递归逻辑如果偷当前节点则左右孩子都不能投此时val1 cur-val left[0] right[0]如果不偷当前节点则左右孩子可偷可不偷取较大的值此时val2 max(left[0], left[1]) max(right[0], right[1])注意最后返回{val2, val1}即{不偷当前节点得到的最大金钱偷当前节点得到的最大金钱}举例推导dp数组以示例1为例如图 代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/ class Solution { public:int rob(TreeNode* root) {vectorint result robTree(root);return max(result[0], result[1]);}// 长度为2的数组0表示不偷1表示偷vectorint robTree(TreeNode * cur){if (cur NULL) return vectorint{0,0};vectorint left robTree(cur-left);vectorint right robTree(cur-right);// 偷cur则不能偷其左右孩子int val1 cur-val left[0] right[0];// 不偷cur则左右孩子可偷可不偷取较大值int val2 max(left[0], left[1]) max(right[0], right[1]);// 注意这里的返回顺序不可以错return {val2, val1};} };
http://www.zqtcl.cn/news/857288/

相关文章:

  • 网站项目策划书模板wordpress修改模版
  • 房地产手机网站模板电脑建立网站
  • 网站自适应手机代码网络服务机构的网站
  • 系统网站重庆智能建站模板
  • wordpress适合优化吗宝塔 wordpress优化
  • 怎么利用网站做外链接怎样做公司网站介绍
  • 广州网站优化渠道木门网站模板
  • 手机网站菜单设计wordpress加联系方式
  • 网站管理助手怎么使用多种郑州网站建设
  • 汉中网站建设费用外贸网站服务商
  • 苏宿工业园区网站建设成功案例色流网站如何做
  • 北沙滩网站建设公司电子商务网站建设管理论文
  • 公司备案证查询网站查询系统网页设计html代码大全及含义
  • 成都开发网站建设做网站一般会出现的问题
  • 企业网站设计布局方式如何在社交网站上做视频推广方案
  • 惠城网站建设服务做1688网站需要懂英语吗
  • 请人做网站要多少钱搜索引擎优化概述
  • 郑州中森网站建设免费网站app生成软件
  • 做诚信通网站seo新手快速入门
  • 做网站怎么去找客户带会员中心WordPress免费主题
  • 网站建设资费安平县护栏网站建设
  • 做视频网站侵权吗个体户网站备案
  • 苏州姑苏区建设局网站智慧团建登录官网手机版
  • 如何搭建一个视频网站广告制作方案
  • 网站策划ps苏州建站公司速找苏州聚尚网络
  • 网站备案 关闭客户制作网站时的问题
  • 项目网站分析推荐做ppt照片的网站
  • wordpress注明网站网站建设需要什么手续
  • 厦门过路费网站福建省建设执业资格注册中心网站
  • c 网站开发案例详解手机网站返回顶部代码