当前位置: 首页 > news >正文

LeetCode刷题——动态规划(C/C++)

文章目录

  • [简单]买股票的最佳时机
  • [简单]爬楼梯
  • [中等]最长递增子序列
  • [中等]最大连续子数组和

[简单]买股票的最佳时机

原题链接

  • 题解
    min:今天之前买股的最低价
    res:最大利润
    每一天比较今天和往前的最低价差值能否比最大利润还大
class Solution {
public:int maxProfit(vector<int>& prices) {int min = INT_MAX;int res = 0;for (int i = 0; i < prices.size(); i++) {if (prices[i] < min) {min = prices[i];}if ((prices[i] - min )> res) {res = prices[i] - min;}}return res;}
};

[简单]爬楼梯

原题链接

  • 题解
    走到第n阶的方法数其实就正好包括
    (1)走到第n-1阶之后再走一阶
    (2)走到第n-2阶之后再走两阶。
    注意:走到第n-2阶之后只能算上再走两阶的方案,因为如果加上再走两次一阶,就会和(1)里面的方案重复
class Solution {
public:int climbStairs(int n) {int f[n+1];if(n>=1)f[1]=1;if(n>=2)f[2]=2;if(n>=3){for(int i=3;i<=n;i++){f[i]=f[i-1] + f[i-2];}}return f[n];}
};

[中等]最长递增子序列

原题链接

  • 题解
    f[i]来表示以i为结尾的最大递增子序列长度,先给定所有单个数字最长字段各自为1,即f[i]=1(即只包括自己)
    然后从左往右遍历, 每遍历到i,都嵌套遍历一次i之前所有的数nums[j]是否小于nums[i],如果是的话,就有了一段基于f[j]+1长度的递增子序列,进而找出以i为末尾的最长递增子序列
class Solution {
public:int lengthOfLIS(vector<int>& nums) {int f[2550];for (int i = 0; i < nums.size(); i++) {f[i] = 1;}for (int i = 1; i < nums.size(); i++) {for (int j = 0; j < i; j++) {if (nums[i] > nums[j] && (f[j] + 1)> f[i])f[i] = f[j] + 1;}}int max = 1;for(int i=0;i<nums.size();i++){if(f[i]>max) max=f[i];}return max;}
};

[中等]最大连续子数组和

原题链接

  • 题解
class Solution {
public:int maxSubArray(vector<int>& nums) {int f[100010];f[0] = nums[0];for(int i=1;i<nums.size();i++){f[i]= max(nums[i],f[i-1]+nums[i]);}int max = f[0];for(int i=1;i<nums.size();i++){if (f[i]>max) max = f[i];}return max;}
};
http://www.lryc.cn/news/24143.html

相关文章:

  • 车载智能终端TBOX
  • 技术分担产品之忧(上):挑选有业务专家潜力的人
  • UVa 12569 Planning mobile robot on Tree (EASY Version) 树上机器人规划(简单版) BFS 二进制
  • intel的集成显卡(intel(r) uhd graphics) 配置stable diffusion
  • 【数据库的基础知识(2)】
  • Docker部署实战
  • RestTemplate 相关使用
  • 新手小白亚马逊注册最全教程在此
  • 二分查找重复情况 找最左边或最右边的位置下标
  • 智慧扫码点餐系统源码
  • 分布式环境并发场景下,如何操作抢红包(或者减少库存)
  • 明星的孩子也在做的感统训练,真的有用吗?
  • 守护进程与TCP通讯
  • 在线文本翻译能力新增14个直译模型,打造以中文为轴心语言的翻译系统
  • CVE-2022-42889 Apache Commons Text 漏洞
  • 20- widedeep及函数式构建模型 (TensorFlow系列) (深度学习)
  • 大家一起做测试的,凭什么你现在拿20k,我却还只有10k?...
  • >>数据管理:DAMA简介「考试和续期」
  • React的生命周期详细讲解
  • 蓝蓝算法二期工程day3,一万年太久,只争朝夕
  • 程序代码的自动化生成方案设计
  • Go 稀疏数组学习与实现
  • MySQL 学习笔记(借鉴黑马程序员MySQL)
  • 中级工程师职称申报到底需要参加答辩不?
  • MM32开发教程(LED灯)
  • win10安装docker
  • 设计模式系列 - 代理模式及动态代理详解
  • 【分享】订阅集简云畅捷通T+cloud连接器自动同步财务费用单至畅捷通
  • GPT的发展历程
  • iOS开发笔记之九十八——关于Memory Leak总结笔记