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

网站开发工具的功能百度seo关键词排名优化工具

网站开发工具的功能,百度seo关键词排名优化工具,站内免费推广,网站优化推广费用1、LeetCode198打家劫舍 题目链接:198、打家劫舍 1、dp[i]:考虑下标i(包括i)以内的房屋,最多可以偷窃的金额为dp[i]。 2、递推公式: 如果偷第i房间,那么dp[i] dp[i - 2] nums[i] &#xf…

1、LeetCode198打家劫舍

题目链接:198、打家劫舍

1、dp[i]:考虑下标i(包括i)以内的房屋,最多可以偷窃的金额为dp[i]

2、递推公式:

如果偷第i房间,那么dp[i] = dp[i - 2] + nums[i] ;

如果不偷第i房间,那么dp[i] = dp[i - 1];

然后dp[i]取最大值,即dp[i] = max(dp[i - 2] + nums[i], dp[i - 1])。

3、初始化:

递推公式的基础就是dp[0] 和 dp[1]。

dp[0] = nums[0];

dp[1] = max(nums[0], nums[1]);

4、遍历顺序: 从前向后遍历;

5、举例推导。

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(), 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];}
};

2、LeetCode213打家劫舍II

题目链接:213、打家劫舍II

本题首尾连在一起,成环有三种情况:

考虑不包含首尾元素, 考虑包含首元素不包含尾元素, 考虑包含尾元素不包含首元素。

第二第三中情况包括第一种,所以只需考虑去掉首元素,去掉尾元素,这两种情况下,哪种的dp[i]更大。

递归五部曲与上题一样,由于要去掉首尾元素,定义一个start、end区间

robRange(vector<int>& nums, int start, int end)。

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 (start == end) return nums[start];vector<int> dp(nums.size(), 0);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];}
};

3、LeetCode337打家劫舍III

题目链接:337、打家劫舍III

第一次做树形dp,有点难理解。

1、dp数组(dp table)以及下标的含义:下标为0记录不偷该节点所得到的的最大金钱,下标为1记录偷该节点所得到的的最大金钱。

2、递归树时的终止条件:

如果遇到空节点的话,无论偷还是不偷都是0。

if (cur == NULL)  return vector<int>{0,0};    注意这里是花括号。

3、遍历顺序:

后序遍历。

递归左节点,得到左节点偷与不偷的金钱。

递归右节点,得到右节点偷与不偷的金钱。

4、递推公式:

偷该节点,则左右孩子不能偷,int val1 = cur->val + left[0] + left[1];

不偷该节点,则左右孩子要偷,每个孩子里偷一个最大的,int val2 = max(left[0],left[1]) + max(right[0], right[1]);

最后当前节点的状态就是{val2, val1}; 即:{不偷当前节点得到的最大金钱,偷当前节点得到的最大金钱}。

5、举例推导:

 

class Solution {
public:int rob(TreeNode* root) {vector<int> result = robTree(root);return max(result[0], result[1]);}vector<int> robTree(TreeNode* cur){if (cur == NULL) return vector<int>{0,0};vector<int> left = robTree(cur->left);vector<int> right = robTree(cur->right);int val1 = cur->val + left[0] + right[0];int val2 = max(left[0], left[1]) + max(right[0], right[1]);return {val2,val1};}
};

http://www.ds6.com.cn/news/73540.html

相关文章:

  • 做一个网站能卖多少钱整合营销方案怎么写
  • 为何要屏蔽网站快照搜索引擎排名大全
  • 官网的建站过程1000个关键词
  • 好的网站建设公司排名怎样在百度上做免费推广
  • 设计网站公司湖南岚鸿设计网络营销做得好的企业有哪些
  • 西安市做网站的公司自动外链
  • 织梦做的网站怎么样网页制作学习
  • 网站系统的建设与管理网站制作的费用
  • 济南网站开发定制域名ip查询入口
  • 渭南做网站价格滨州seo排名
  • 1688网站一起做网店网站设计制作在哪能看
  • 新手做网站服务器用什么成都企业网站seo技术
  • 用户要承担暖气费的税吗seo的概念是什么
  • 企业信息年报系统seo推广公司有哪些
  • 泉做网站的公司潍坊seo建站
  • 公众号制作培训苏州百度快照优化排名
  • 硅谷主角刚开始做的是软件还是网站韶关疫情最新消息
  • 做网站麻烦么sem是指什么
  • 凡科可以做游戏网站吗人员优化是什么意思
  • 编织网站建设网络平台建站
  • 功能 wordpress.org霸屏seo服务
  • 常德市做网站的公司郑州网站seo技术
  • 上海公司电话贵阳网站优化公司
  • 深圳燃气公司电话95158枣庄网站seo
  • 东莞黄江网站建设2024小学生时事新闻十条
  • 网站建设的宽带指标要求外链提交
  • 在线建站网站谷歌搜索入口手机版
  • 怎么做电子商务的网站竞价销售是什么意思
  • 沈阳三好街网站建设seo外包公司一般费用是多少
  • 网站信息填写要求广州网站排名优化公司