【动态规划】打家劫舍Ⅱ

题目链接:https://leetcode.cn/problems/house-robber-ii/description/

cpp 复制代码
class Solution {
public:
    int rob(vector<int>& nums) 
    {
        int n = nums.size();
        // 两种情况下的最大值
        return max(nums[0] + rob1(nums, 2, n - 2), rob1(nums, 1, n - 1));
    }
    int rob1(vector<int>& nums, int left, int right)
    {
        /*打家劫舍Ⅰ里的逻辑*/
        if (left > right) return 0;
        // 1. 创建dp表
        int n = nums.size();
        vector<int> f(n);
        auto g = f;
        // 2. 初始化
        f[left] = nums[left];
        // 3. 填表
        for (int i = left + 1; i <= right; ++i)
        {
            f[i] = nums[i] + g[i - 1];
            g[i] = max(f[i - 1], g[i - 1]);
        }
        // 4. 返回值
        return max(f[right], g[right]);
    }
};
相关推荐
今天AI了吗15 小时前
精细化落地教程:TimechoAI调参标准+数据清洗规范+误差归因+阈值适配全维度指南
大数据·人工智能·算法
zephyr0516 小时前
从递归到迭代:二叉树非递归前中后序遍历详解
算法
Dr.kangder16 小时前
嵌入式总线设备解析——TTE总线应用与实践
开发语言·网络·算法·嵌入式·多任务·同步机制
Hi李耶16 小时前
【LeetCode】557.反转字符串中的单词 III
算法·leetcode·职场和发展
深蓝学院16 小时前
机器人学习算法五大体系详解:模仿、强化、多模态、持续学习……
算法·机器人
2401_8582861116 小时前
OS82.【Linux】设计线程池
java·linux·运维·服务器·开发语言·算法·线程池
Epiphany.55617 小时前
找到所有好字符串(记忆化搜索+KMP)(里面含KMP模板,用来入门)
算法
坚持编程的菜鸟17 小时前
模拟实现strncpy
c语言·算法·模拟实现strncpy
深圳市快瞳科技有限公司19 小时前
个体识别、行为解读、健康管理:多模态宠物AI大模型的场景化落地
人工智能·算法·计算机视觉·大模型·多模态·宠物·宠物ai识别
liulilittle19 小时前
归一化:激活函数
人工智能·算法·机器学习·llm