与第一次抢劫的题不一致的原因是这道题是环形抢劫
抢第一个就不能抢最后一个 动态转移方程没有改变

class Solution {public int rob(int[] nums) {if(nums==null||nums.length==0) return 0;if(nums.length==1) return 1;int n=nums.length;//第一个到倒数第二个截止 第二个到最后一个截止return Math.max(rob(nums,0,n-2),rob(nums,1,n-1));}private int rob(int[]nums,int first,int last){int pre1=0,pre2=0;for(int i=first;i<=last;i++){int cur=Math.max(nums[i]+pre2,pre1);pre2=pre1;pre1=cur;}return pre1;}
}

cur和 pre 交替记录,将空间复杂度降到 O(1) 时间复杂度O(n)

leetcode213强盗抢劫2相关推荐

  1. 动态规划强盗抢劫Java实现

    题目:抢劫一排住户,但是不能抢邻近的住户,求最大抢劫量 思路:dp(n)代表抢劫到第n个住户的最大抢劫量,如果抢劫了第n-1个住户,就不能抢劫第n个住户,用arr数组代表一排用户 所以dp(n)=ma ...

  2. 动态规划(斐波那契系列)---强盗抢劫

    强盗抢劫 198. House Robber (Easy) 题目描述:   抢劫一排住户,但是不能抢邻近的住户,求最大抢劫量. 思路分析:   定义dp数组用来存储最大抢劫量,其中dp[i]表示抢到第 ...

  3. 动态规划解强盗抢劫房间问题

    题目: 强盗抢劫一排房间(房间数大于3),每个房间都有钱,不能抢劫两个相邻的房间,要求抢的钱最多.每个房间的钱数用数组表示.数组如:[2,7,9,3,1] 解: 对每个元素进行判断,并存储当前元素下最 ...

  4. leetcode-198强盗抢劫(动态规划)

    题目:你是一个专业的强盗,计划在街上抢劫房屋. 每个房子都藏着一定数量的钱,阻止你抢劫他们的唯一限制因素是相邻的房屋有连接的安全系统,如果两个相邻的房子在同一个晚上被闯入,它将自动联系警方.给出一个代 ...

  5. leetcode198强盗抢劫

    题目: 思路: 由于不能抢劫邻近住户,如果抢劫了第 i -1 个住户,那么就不能再抢劫第 i 个住户,动态方程为: 代码: class Solution {public int rob(int[] n ...

  6. dp House Robber 强盗抢劫

    题目大意 你要去一条街上偷钱,每一户人家都有一定量的钱,但是你不能偷相邻两家的,因为相邻的两家有安保系统相连,偷了你就被警察叔叔带走了(什么鬼安保系统= =). 给定一个非负数组,代表每家有多少钱.求 ...

  7. Java多线程 | 详解ThreadLocal实现原理

    一.ThreadLocal的简介: 一般情况下,我们创建的变量都是可以给任何线程访问并修改的,如果我们想让线程拥有自己的私有本地变量,那我们就可以使用ThreadLocal类是实现这样的想法. Thr ...

  8. 强盗问题动态规划详解

    强盗抢劫一排房间(房间数大于3),每个房间都有钱,不能抢劫两个相邻的房间,要求抢的钱最多.每个房间的钱数用数组表示.数组如:[2,7,9,3,1] 详解: 我们简单分析情况. 1.当只有一间房子的时候 ...

  9. 多变量线性优化_使用线性上下文强盗进行多变量Web优化

    多变量线性优化 Expedia Group Technology -数据 (EXPEDIA GROUP TECHNOLOGY - DATA) Or how you can run full webpa ...

最新文章

  1. MindInsight计算图可视设计
  2. java操作dom节点的添加_java操作DOM节点的添加,删除,修改
  3. php 扩展的so文件位置
  4. github:已经提交并push后再次追加提交
  5. JAVA 编写程序实现如下功能:一个线程进行如下运算1*2+2*3+3*4+……+19*20,而另一个线程则每隔一段时间读取前一个线程的运算结果。
  6. 【Java线程】线程同步—synchronized Lock
  7. 经典的java程序_Java经典程序
  8. maven 项目上传私服pom配置
  9. xhr返回值_XMLHttpRequest发送POST、GET请求以及接收返回值
  10. 随想录(386cpu保护模式)
  11. 01-老马jQuery教程-jQuery入口函数及选择器
  12. 【图像去噪】基于matlab中值+均值+高斯+Laplacian+Sobel+Prewitt图像去噪【含Matlab源码 025期】
  13. pandas.DataFrame及xgboost代码示例
  14. likeshop单商户SAAS商城系统无限多开
  15. 周鸿祎说:编程能力比马化腾强,不如雷军。你怎么看?
  16. 给初学者:用VB写外挂 ———— 实战三:泰坦之旅V1.08 十项属性修改器——另一种无输入焦点时响应按键的方法
  17. python3爬虫有道翻译_【Python3爬虫】有道翻译
  18. Can not set java.util.Date field *** to java.time.LocalDateTime解决办法
  19. 求不规则图形外接圆的算法 (附:三角形外接圆计算公式)
  20. 用nodejs写一个yys挂机脚本

热门文章

  1. sql数据库查询计算机学院,SQL简单查询-2
  2. 会计毕业生的转行之路:坚持无畏,我是我自己的英雄
  3. 用Docker搭建WordPress博客
  4. 苹果三星会谈16小时无果 专利案将进入庭审阶段
  5. 如何快速查看电脑磁盘ID?
  6. 会员积分营销系统操作的时候怎样提升消费者的积极性?
  7. 时间管理精力管理→效率
  8. 本地远程连接不上宝塔面板里的数据库的解决方案
  9. 03-HTML框架介绍——body
  10. Renoncer tantôt détail guerre blanc.Unde necessitatibus blanditiis.