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

做几个网站好广州疫情最新情况

做几个网站好,广州疫情最新情况,完善网站建设工作总结,武汉门户网题1: 指路:198. 打家劫舍 - 力扣(LeetCode) 思路与代码: 对于这个题,拿房屋i举例,我们需要考虑的是否确定偷取这个房屋,如果确定偷取这个房屋,那么我们将得到房屋i的金…

题1:

指路:198. 打家劫舍 - 力扣(LeetCode)
思路与代码:

对于这个题,拿房屋i举例,我们需要考虑的是否确定偷取这个房屋,如果确定偷取这个房屋,那么我们将得到房屋i的金币也就是nums[i],但是因为不能偷取相邻的房屋,那么得到nums[i]和前i-2个房屋最大金币数的同时失去的是nums[i-1],否则不偷取这个房屋,那么考虑偷取的就是第i-1个房屋。这里我们就需要判断这两种情况那种得到的金币最多。特殊情况,当房屋门下标是0时,此时一定会偷取这仅有的一间,那么此时金币数为nums[0],当房屋下标为1时,我们需要判断第0间房屋和第1间房屋的较大值,得到较大的金币数。首先,定义一个数组dp[i],其含义为考虑下标为i在内(包括i)的房屋之前能够偷得的最大的金币数;其次我们尝试得出递推公式,前面分析题意阶段已经有提到过dp[i]应该取确定偷取第i间房屋和确定不偷取第i间房屋的较大值,也就是dp[i]=max(nums[i] + dp[i - 2], dp[i - 1]);然后对dp数组进行初始化,我们在前面也提到过,即dp[0]=nums[0],dp[1]=max(nums[0], nums[1]);接着我们确定遍历顺序,这个题的遍历顺序显而易见,从小到大即可,也就是从下标为2到nums.size();最后打印dp数组即可。代码如下:

class Solution {
public:int rob(vector<int>& nums) {if (nums.size() == 0) return 0;if (nums.size() == 1) return nums[0];vector<int> dp(nums.size());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];}
};

题2:

指路:213. 打家劫舍 II - 力扣(LeetCode)
思路与代码:

对于这个打家劫舍,不同于上一个的是它的环形形态,抽象来说,也就是首尾房屋不能同时偷取,这样我们尝试分类讨论,考虑偷取首房屋考虑偷取尾房屋。那么,中间不带首尾房屋的情况就是我们上一题的打家劫舍。在public中讨论考虑两种偷取方式的结果取较大值即可。代码如下:

class Solution {
public:int rob(vector<int>& nums) {if (nums.size() == 0) return 0;if (nums.size() == 1) return nums[0];int result1 = robRange(nums, 0, nums.size() - 2);  //考虑左边界int result2 = robRange(nums, 1, nums.size() - 1);  // 考虑右边界return max(result1, result2);}int robRange(vector<int>& nums, int start, int end) {if (end == start) return nums[start];vector<int> dp(nums.size());dp[start] = nums[start];dp[start + 1] = max(nums[start], nums[start + 1]);for (int i = start + 2; i <= end; i++) {dp[i] = max(dp[i - 2] + nums[i], dp[i - 1]);}return dp[end];}
};

http://www.mmbaike.com/news/51621.html

相关文章:

  • 手机开发网站教程网络营销考试题目及答案2022
  • 做网站会什么问题大连seo关键词排名
  • wordpress怎么搬站宣传推广计划怎么写
  • 万网建网站流程信息流广告代运营
  • 设计电子商务网站建设方案产品seo基础优化
  • 南京培训网站建设独立站怎么建站
  • 新鸿儒做网站app排名优化公司
  • 网站备案 换域名一个关键词要刷多久
  • 3d建模素材seo排名优化什么意思
  • 网站建设公司南宁网站服务器查询
  • 六安手机网站建设站长之家排行榜
  • 有哪些做包装设计网站好些网络营销推广策划书
  • php做的网站如何发布微信推广链接怎么制作
  • php多版本共存wordpressseo3
  • 网站风格设计合肥百度seo代理
  • 网站制作成本多少钱域名信息查询系统
  • 龙岩网站建设要多网络推广引流有哪些渠道
  • 哪里建设企业网站优化设计电子版在哪找
  • 网站一般多长性能优化大师
  • 网站建设标语营销策划公司
  • 南通做网站的公司深圳网站优化公司
  • 盐城市建设工程网站本周的新闻大事10条
  • 网上做打字任务的网站seo专业培训班
  • 厦门做网站xm37排名优化百度
  • 网站制作 火星科技电子商务营销的概念
  • 做物流网站的多少钱海外seo
  • 怎么查看一个网站的建设地区免费网站制作app
  • flash做网站的流程百度指数移动版app
  • 微信导航网站怎么做的最新seo网站优化教程
  • 个人购买域名做企业网站网站开发