Javascript

198. 打家劫舍---js解法

本文主要是介绍198. 打家劫舍---js解法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

题目描述:

你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。

给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。


力扣链接:https://leetcode-cn.com/problems/house-robber/


在这里插入图片描述


在这里插入图片描述

var rob = function(nums) {
            if(nums.length===0){
                return 0;
            }
            if(nums.length===1){
                return nums[0]
            }
            const memo = [];
            memo[0] = nums[0]
            memo[1] = Math.max(nums[0],nums[1])
            for(let i=2;i<nums.length;++i){
                memo[i] = Math.max(nums[i]+memo[i-2],memo[i-1])
            }
            return memo[memo.length-1]
        };
这篇关于198. 打家劫舍---js解法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!