LeetCode讲解篇之198. 打家劫舍

LeetCode讲解篇之198. 打家劫舍

文章目录

题目描述

题解思路

该问题可以通过递推来完成

递推公式:

前n间房的最大金额 = max(前n-1间房的最大金额, 前n-2间房的最大金额+第n-1间房的最大金额)

题解代码

go 复制代码
func rob(nums []int) int {
    if len(nums) == 0 {
        return 0
    }
    n := len(nums)
    dp := make([]int, n + 1)
    dp[0] = 0
    dp[1] = nums[0]
    for k := 2; k <= n; k++ {
        if dp[k-1] > dp[k-2] + nums[k-1] {
            dp[k] = dp[k-1]
        } else {
            dp[k] = dp[k-2] + nums[k-1]
        }
    }

    return dp[n]
}
相关推荐
伊H2 小时前
C语言main的参数;argc与argv
linux·c语言·算法
triticale2 小时前
【数论】快速幂
java·算法
爱的叹息3 小时前
【java实现+4种变体完整例子】排序算法中【计数排序】的详细解析,包含基础实现、常见变体的完整代码示例,以及各变体的对比表格
java·算法·排序算法
CodeJourney.4 小时前
Python数据可视化领域的卓越工具:深入剖析Seaborn、Plotly与Pyecharts
人工智能·算法·信息可视化
Non importa4 小时前
【初阶数据结构】树——二叉树(上)
c语言·数据结构·学习·算法
Tech Synapse6 小时前
基于Surprise和Flask构建个性化电影推荐系统:从算法到全栈实现
python·算法·flask·协同过滤算法
終不似少年遊*6 小时前
国产之光DeepSeek架构理解与应用分析04
人工智能·python·深度学习·算法·大模型·ds
天天扭码6 小时前
一分钟解决 | 高频面试算法题——最大子数组之和
前端·算法·面试
杰杰批6 小时前
力扣热题100——矩阵
算法·leetcode·矩阵
明月看潮生6 小时前
青少年编程与数学 02-016 Python数据结构与算法 28课题、图像处理算法
图像处理·python·算法·青少年编程·编程与数学