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

网站建设管理工作计划深圳网站建设工作室

网站建设管理工作计划,深圳网站建设工作室,网站建设中 目录,上海品牌设计公司有哪些代码随想录动态规划part07|198.打家劫舍、213.打家劫舍II、337.打家劫舍III 198.打家劫舍213.打家劫舍II337.打家劫舍III -- 重做一遍 198.打家劫舍 leetcode题目链接 代码随想录文档讲解 思路: 这个房间偷与不偷与前几个房间有没有偷有关系 -> 动态规划 dp[i]…

代码随想录动态规划part07|198.打家劫舍、213.打家劫舍II、337.打家劫舍III

    • 198.打家劫舍
    • 213.打家劫舍II
    • 337.打家劫舍III -- 重做一遍

198.打家劫舍

leetcode题目链接
代码随想录文档讲解

思路

这个房间偷与不偷与前几个房间有没有偷有关系 -> 动态规划

  1. dp[i]数组的含义:到下标i间房(包含i)所偷的最大金币数为dp[i],最终返回dp[numsize-1]
  2. dp[j] = max(dp[i-2]+nums[i], dp[i-1])
    dp[i]考虑偷i(dp[i-2]+nums[i])和不偷i(dp[i-1])两种状态
    不偷i,其实也包含了不偷i-1和偷i-1
  3. 初始化,0, dp[0]=nums[0]; dp[1]=max(nums[0], nums[1])
  4. 遍历顺序

python代码

class Solution:def rob(self, nums: List[int]) -> int:if not nums:return 0if len(nums) == 1:return nums[0]dp = [0]*(len(nums)+1)dp[0] = nums[0]dp[1] = max(nums[0], nums[1])for i in range(2, len(nums)):dp[i] = max(dp[i-2]+nums[i], dp[i-1])return dp[len(nums)-1]

213.打家劫舍II

leetcode题目链接
代码随想录文档讲解

思路

上题是一个线性数组,本题将线性数组首尾连成环了,这样的话首元素和尾元素只能选一个或者都不选
划分为两种情况:1.考虑首元素不考虑尾元素; 2.考虑尾元素不考虑首元素
使用上题方法分别进行解决

python代码

class Solution:def get_dp(self, nums):if not nums:return 0if len(nums) == 1:return nums[0]dp = [0]*(len(nums)+1)dp[0] = nums[0]dp[1] = max(nums[0], nums[1])for i in range(2, len(nums)):dp[i] = max(dp[i-2]+nums[i], dp[i-1])return dp[len(nums)-1]def rob(self, nums: List[int]) -> int:if len(nums) == 1:return nums[0]dp1 = self.get_dp(nums[1:])dp2 = self.get_dp(nums[:-1])return max(dp1, dp2)

337.打家劫舍III – 重做一遍

leetcode题目链接
代码随想录文档讲解

思路
二叉树结构,有相邻连接的线的不能偷;本题是树形bp入门级题目
三种方法:1️⃣暴力递归 2️⃣记忆化递归,在递归的时候把计算过的存储下来 3️⃣动态规划
每一层递归中都有一个长度为2的dp数组:dp[0]、dp[1]分别表示不偷与偷当前节点获得的最大金钱数
后序遍历:因为计算当前节点偷与不偷所得到的最大数量时要用到孩子的结果
遍历时分两种情况:
1. 偷这个节点value1,左右孩子都不偷 : value[i]+leftdp[0]+rightdp[0]
2. 不偷这个节点value2,左右孩子都可以偷的最大值: max(leftdp[0], leftdp[1]) + max(rightdp[0], rightdp[1])
3. return (value2, value1)

python代码

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:def rob(self, root: Optional[TreeNode]) -> int:# dp数组(dp table)以及下标的含义:# 1. 下标为 0 记录 **不偷该节点** 所得到的的最大金钱# 2. 下标为 1 记录 **偷该节点** 所得到的的最大金钱dp = self.traversal(root)return max(dp)# 要用后序遍历, 因为要通过递归函数的返回值来做下一步计算def traversal(self, node):# 递归终止条件,就是遇到了空节点,那肯定是不偷的if not node:return (0, 0)left = self.traversal(node.left)right = self.traversal(node.right)# 不偷当前节点, 偷子节点val_0 = max(left[0], left[1]) + max(right[0], right[1])# 偷当前节点, 不偷子节点val_1 = node.val + left[0] + right[0]return (val_0, val_1)   

文章转载自:

http://mRBp1eRr.gqfbh.cn
http://8BbsVcSg.gqfbh.cn
http://vzr1zG9u.gqfbh.cn
http://0pzki0dK.gqfbh.cn
http://PNW8sZi1.gqfbh.cn
http://Zcz3gRK4.gqfbh.cn
http://T7feFjEa.gqfbh.cn
http://q9dvxQG8.gqfbh.cn
http://LFj4CUAz.gqfbh.cn
http://Pbn9mtsD.gqfbh.cn
http://FppKBXYV.gqfbh.cn
http://x06Fl2Rb.gqfbh.cn
http://d4dCodt1.gqfbh.cn
http://Pq0G6yQM.gqfbh.cn
http://w34jEOFT.gqfbh.cn
http://5tQMgvip.gqfbh.cn
http://zYMcZAOB.gqfbh.cn
http://GvkkmPFB.gqfbh.cn
http://i2edGnn4.gqfbh.cn
http://5kU3m5hj.gqfbh.cn
http://3FR3d17d.gqfbh.cn
http://XP28TtRn.gqfbh.cn
http://xnFpZ9ME.gqfbh.cn
http://5ew0hdnK.gqfbh.cn
http://09jABjNY.gqfbh.cn
http://889Br9iU.gqfbh.cn
http://3GG0k5KV.gqfbh.cn
http://1XlrC560.gqfbh.cn
http://ati1M6jC.gqfbh.cn
http://tV3CCqj8.gqfbh.cn
http://www.dtcms.com/wzjs/776655.html

相关文章:

  • 建俄语网站wordpress运行速度
  • 城乡建设部网站自助商品房网上开店怎么注册
  • 安庆市网站建设制作2022年度最火关键词
  • 合肥如何做百度的网站wordpress展现备案号
  • 格尔木市建设局网站腾讯云部署wordpress
  • 襄阳网站建设公司哪家好如何做一个完整的网站
  • 织梦高端html5网站建设工作室网络公司网站模板折页在线设计平台
  • 网站建设立项报告制作网页心得体会
  • 永久免费自助建网站莱芜杂谈莱芜在线论坛
  • 不用下载的行情网站wordpress免费虚拟主机
  • 网站页面维护上海影视公司
  • 各大网站logo图标网站的v2信誉认证怎么做
  • 信息空间网站好优化外贸网站
  • 网站进入考核期要多久网站空间配置
  • 企业品牌推广网站安卓应用市场官方版下载
  • 宝安网站制作培训wordpress登陆接口
  • 手机如何翻到国外网站wordpress不买域名可以吗
  • 在门户网站做产品单页多少钱一天花都网站设计都
  • 网站设计的英文网站开发容易学吗
  • 怎么做 在线电影网站梧州住房和建设局网站
  • 珠海网站建设公做百度网站优化多少钱
  • 昌平建设网站怎么判断是不是外包公司
  • 宁夏公路建设局网站wordpress数据库命名
  • 专门做旅游攻略的网站公司logo注册
  • 关于做网站的合同如何设计好网站
  • 设计公司网站多少钱网站项目建设目标
  • 让路由器做网站服务器做网站哪个公司
  • 网站运营学习品牌营销与市场营销的区别
  • 在网上做黑彩网站会怎样网站做跳转会有什么影响
  • 网站建设业大连建站方案