/*** 你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。* 这个地方所有的房屋都围成一圈,这意味着第一个房屋和最后一个房屋是紧挨着的。* 同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。* 给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。* @example* 输入: [1,2,3,1]* 输出: 4* 解释: 你可以先偷窃 1 号房屋(金额 = 1),然后偷窃 3 号房屋(金额 = 3)。偷窃到的最高金额 = 1 + 3 = 4 */
function rob (nums) {if (nums.length <= 1) {return nums[0] ? nums[0] : 0}let nums1 = [nums[0], Math.max(nums[0], nums[1])],           //表示从0号房间开始,经过0号房间就是num[0],经过1号房间就是0号和1号的最大值nums2 = [0,nums[1], Math.max(nums[1], nums[2])]          //表示从1号房间开始,经过1号房间就是num[1],经过2号房间就是1号和2号的最大值for(let i = 2;i < nums.length - 1;i++) {                     //表示从0号开始,到经过倒数第二号房间结束。nums1[i] = Math.max(nums[i] + nums1[i-2], nums1[i-1])    //得出每经过一个房间的最大金额的数组}for(let j = 3;j < nums.length;j++) {                         //表示从1号开始,到经过倒数第一号房间结束。nums2[j] = Math.max(nums[j] + nums2[j-2], nums2[j-1])    //得出每经过一个房间的最大金额的数组}return Math.max(nums1[nums.length - 2], nums2[nums.length - 1])}

小偷抢劫房屋 算法题相关推荐

  1. 面试必备:高频算法题汇总「图文解析 + 教学视频 + 范例代码」之 字符串处理+动态规划 合集!

    Attention 秋招接近尾声,我总结了 牛客.WanAndroid 上,有关笔试面经的帖子中出现的算法题,结合往年考题写了这一系列文章,所有文章均与 LeetCode 进行核对.测试.欢迎食用 本 ...

  2. JavaScript算法题100道

    排序算法 1.冒泡排序 从开始位置两两比较,持续n轮 function bubbleSort (arr) {// 执行第 i + 1 轮for (var i = 0; i < arr.lengt ...

  3. leetcode 用java_LeetCode算法题-Heaters(Java实现)

    这是悦乐书的第239次更新,第252篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第106题(顺位题号是475).冬天来了!您在比赛期间的第一份工作是设计一个固定温暖半径 ...

  4. Python Json数据结构 打印json结构里含有$符号value的值 并且去重里面value相同的值 77hub 北京企业科技 企企 测试工程师面试 简单代码算法题

    目录 前言 一.题目要求 二.示例数据 三.示例代码 四.解题思路和方法分析 4.1 解题思路分析 4.2 正则方法解题 不正确的解题思路 4.3 递归方法解题 正确的解题思路 4.4 关于解题和面试 ...

  5. Re: 求助:5道算法题

    http://www.newsmth.net/frames.html 发信人: cutepig (cutepig), 信区: Algorithm 标  题: 求助:5道算法题 发信站: 水木社区 (S ...

  6. 经典算法题每日演练——第六题 协同推荐SlopeOne 算法

    原文:经典算法题每日演练--第六题 协同推荐SlopeOne 算法 相信大家对如下的Category都很熟悉,很多网站都有类似如下的功能,"商品推荐","猜你喜欢&quo ...

  7. 算法总结---最常用的五大算法(算法题思路)

    算法总结---最常用的五大算法(算法题思路) 一.总结 一句话总结: [明确所求:dijkstra是求点到点的距离,辅助数组就是源点到目标点的数组] [最简实例分析:比如思考dijkstra:假设先只 ...

  8. BAT七年经验,却抵不过外企面试的两道算法题?

    整理| 琥珀 出品| AI科技大本营 又遇年底跳槽季,如果你曾在 BAT 等互联网大厂有过较为丰富的工作经验,想要换份工作,面试时会主要考虑哪些因素? 面试外企,却被两道算法题难住? 近日,一位网友在 ...

  9. 字节跳动面试官:你离50w年薪就差答对了这个算法题!

    我有个朋友,最近去头条面试,因为算法题没写出来,直接面挂了,搞得他非常郁闷. 众所周知,算法对程序员来说越来越重要了,但是总有人抱有一丝侥幸,不肯投入精力去学习,想着现在的工作中反正也用不到,等找工作 ...

最新文章

  1. 拒绝平庸--浅谈WEB登录页面设计
  2. 自主学习之RxSwift(二) -----flatMap
  3. yolov3 -tf 解析数据
  4. [CQOI2012]交换棋子【网络流】【费用流】
  5. 实验7-3-2 查找指定字符 (15分)
  6. 关于把字符串整数转换成整数的程序
  7. 运维之我的docker-Dockerfile构建镜像详情
  8. 移动端vue实现部门结构功能_基于Vue的组织架构树组件
  9. java注解_Java注解
  10. 颜色对照表(二)(16进制、RGB、CMYK、HSV、中英文名)
  11. 怎样选择拨号vps?
  12. 重新安装电脑系统,升级win10的系统经验总结
  13. C语言输出三位数的水仙花数
  14. Cannot resolve MVC View
  15. Java-彩票游戏例题
  16. java fuoco车架_为速度而生 JAVA Fuoco铝合金气动公路
  17. CSDN20181219博客黑板报
  18. Java注释:单行、多行和文档注释
  19. mkconfig与Kconfig
  20. 在苹果MacOS Majave10.14.6系统中安装SRIM 2008软件

热门文章

  1. linux rm文件恢复总结
  2. java ntlm_NTLM验证过程
  3. 推荐一个CG模型的下载地方。
  4. 基于红外热成像人体测温系统解决方案的组成
  5. 替换Excel单元格中的回车制表符
  6. Oracle数据库性能分析管理-IO分析
  7. 哪些用户需要云主机安全?
  8. 搭档之家:8月交付3965辆 同比增长104.1% 蔚来再创月度交付新高
  9. oracle导出dmp包时停止不动,高手来看:用exp导出到 正在导出群集定义 停止不动
  10. java山地车碟片卡死怎么办_拿什么来拯救你,我的碟片