算法练习第四十九天|121. 买卖股票的最佳时机、122.买卖股票的最佳时机II

121. 买卖股票的最佳时机
122.买卖股票的最佳时机II

  1. 买卖股票的最佳时机
class Solution {// public int maxProfit(int[] prices) {//     int result = 0;//     for(int i = 0;i<prices.length;i++){//         for(int j = i+1;j<prices.length;j++){//             result = Math.max(prices[j] - prices[i],result);//         }//     }//     return result;// }public int maxProfit(int[] prices) {//dp[i][0] 第i天持有这个股票,最大现金//dp[i][1] 第i天不持有这个股票,最大现金//dp[i-1][1]//递推公式if (prices == null || prices.length == 0) return 0;int len = prices.length;int[][] dp = new int[len][2];int result = 0;dp[0][0] = -prices[0];dp[0][1] = 0;for(int i = 1;i<prices.length;i++){//持有股票最大现金,前一天不购入和购入dp[i][0] = Math.max(dp[i-1][0],-prices[i]);//不持有股票最大现金,前一天不卖出和卖出dp[i][1] = Math.max(dp[i-1][1],dp[i-1][0]+prices[i]);}return dp[len-1][1];}
}

122.买卖股票的最佳时机II

class Solution {// public int maxProfit(int[] prices) {//     int result = 0;//     for(int i = 1;i<prices.length;i++){//             result += Math.max(prices[i] - prices[i-1],0);//     }//     return result;// }public int maxProfit(int[] prices) {//dp[i][0] 第i天持有这个股票,最大现金//dp[i][1] 第i天不持有这个股票,最大现金//dp[i-1][1]//递推公式if (prices == null || prices.length == 0) return 0;int len = prices.length;int[][] dp = new int[len][2];int result = 0;dp[0][0] = -prices[0];dp[0][1] = 0;for(int i = 1;i<prices.length;i++){//持有股票最大现金,前一天不购入和购入,和上一题区别在于它本地可以重复购入和卖出dp[i][0] = Math.max(dp[i-1][0],dp[i-1][1]-prices[i]);//不持有股票最大现金,前一天不卖出和卖出dp[i][1] = Math.max(dp[i-1][1],dp[i-1][0]+prices[i]);}return dp[len-1][1];}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/807040.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[蓝桥杯 2023 省 B] 冶炼金属(c++)

[蓝桥杯 2023 省 B] 冶炼金属 题目描述 小蓝有一个神奇的炉子用于将普通金属 O 冶炼成为一种特殊金属 X。这个炉子有一个称作转换率的属性 V V V&#xff0c; V V V 是一个正整数&#xff0c;这意味着消耗 V V V 个普通金属 O 恰好可以冶炼出一个特殊金属 X&#xff0c;当普…

Unity 九宫格

1. 把图片拖拽进资源文件夹 2.选中图片&#xff0c;然后设置图片 3.设置九宫格 4.使用图片&#xff0c;在界面上创建2个相同的Image,然后使用图片&#xff0c;修改Image Type 为Sliced

Nodejs 第六十二章(短链接)

短链接介绍 短链接是一种缩短长网址的方法&#xff0c;将原始的长网址转换为更短的形式。它通常由一系列的字母、数字和特殊字符组成&#xff0c;比起原始的长网址&#xff0c;短链接更加简洁、易于记忆和分享。 短链接的主要用途之一是在社交媒体平台进行链接分享。由于这些…

C++之g++编译

/usr/bin/g -I/usr/include/eigen3 -fdiagnostics-coloralways -g /home/local/EUROPRO/guoliang.wang/Desktop/eigen_learn.cpp -o /home/local/EUROPRO/guoliang.wang/Desktop/eigen_learn下面是解读&#xff1a; 这个 g 编译命令是用于编译你的 eigen_learn.cpp 程序&#…

配置及第三方授权申请教程

项目需要配置的地方不多&#xff0c;主要就两个地方需要注意&#xff1a;邮箱授权和第三方授权需要提前申请 1.基本设置 1.1 打开application.yml&#xff0c;修改数据库ip等基本信息 这些基本的配置就不多说了&#xff0c;基本就是改下服务器ip和账号密码什么的 1.2 获取QQ…

RX4901CE自带SPI接口,适合用在需高精度和快速响应的设备

传统的模拟温度补偿晶振采用热敏电阻等元器件来检测环境温度&#xff0c;将温度信息做相应变换后控制晶振的输出频率用来实现稳定输出&#xff0c;但是这种做法频率补偿精度有限。伴随目前电路计算频率越来越高&#xff0c;更多工业级的高时间精度和快速时间响应的应用出现&…

MLeaksFinder报错

1.报错&#xff1a;FBClassStrongLayout.mm 文件&#xff1a;layoutCache[currentClass] ivars; 解决&#xff1a;替换为layoutCache[(id)currentClass] ivars; 2.编译正常但运行时出现crash indirect_symbol_bindings[i] cur->rebinding FBRetainCycleDetector iOS15 …

Mybatis分页查询用PageHelper插件

首先看接口文档需求 看响应数据样例&#xff0c;那么咱们先自定义一个bean来满足这个需求&#xff0c;这里定义PageBean实体类 package com.itheima.pojo;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;import java.util.List;//分…

Ubuntu-22.04安装Virtualbox并安装Windows10

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、Virtualbox是什么&#xff1f;二、安装Virtualbox1.关闭Secure Boot2.安装 三、安装Windows101.新装虚拟机基本配置2.新装虚拟机核心配置 总结 前言 虚拟机…

Harmony鸿蒙南向驱动开发-UART

UART指异步收发传输器&#xff08;Universal Asynchronous Receiver/Transmitter&#xff09;&#xff0c;是通用串行数据总线&#xff0c;用于异步通信。该总线双向通信&#xff0c;可以实现全双工传输。 两个UART设备的连接示意图如下&#xff0c;UART与其他模块一般用2线&a…

内置模块和开发规范(3)

内置模块和开发规范 1.内置模块 1.json json模块&#xff0c;是python内部的一个模块&#xff0c;可以将python的数据格式转换为json格式的数据&#xff0c;也可以将json格式转换为python的数据格式 json格式&#xff0c;是一个数据格式(本质上就是字符串&#xff0c;常用于…

记录一个Kafka客户端Offset Explore连不上的问题

CSDN上的其他人不知道咋想的&#xff0c;这么简单一个问题都要写个收费的回答。那我来写个不收费的&#xff0c; 我昨天把集群重装了一下&#xff0c;再连这个工具就连不上了&#xff08;你先把zk和kafka在集群启起来&#xff09;&#xff0c;报错截图如下&#xff1a; 英文翻…

中位数和众数-第12届蓝桥杯选拔赛Python真题精选

[导读]&#xff1a;超平老师的Scratch蓝桥杯真题解读系列在推出之后&#xff0c;受到了广大老师和家长的好评&#xff0c;非常感谢各位的认可和厚爱。作为回馈&#xff0c;超平老师计划推出《Python蓝桥杯真题解析100讲》&#xff0c;这是解读系列的第49讲。 中位数和众数&…

MySQL 用来查询表结构的 SQL 语句

文章目录 背景&#xff1a; 在项目的总体设计中&#xff0c; 关于数据库设计中的逻辑设计&#xff0c; 需要用到表结构&#xff0c;可以使用如下 SQL 语句直接查询。 SELECTTABLE_SCHEMA as 数据库名,TABLE_NAME as 表名,ORDINAL_POSITION as 序号,COLUMN_NAME as 字段名,COLUM…

Leetcode-1702-修改后的最大二进制字符串-c++

题目详见https://leetcode.cn/problems/maximum-binary-string-after-change/ 官方题解 我们从字符串左边第一位开始依次遍历&#xff0c;如果是 1 则不用改变&#xff0c;如果是 0&#xff0c;我们则想办法将其变成 1。 我们会找到下一位出现的 0&#xff0c;利用操作 2 我们…

git修改某个远端服务器的地址的方式以及4种remote

假设本地有1个远端仓库&#xff0c;默认一般叫origin&#xff0c;原来对应的git url是&#xff1a;gitxxx.git # 查看方式&#xff1a; git remote -v# 修改方式&#xff1a; git地址url指定远程仓库&#xff1a;&#xff08;常用&#xff09; git remote set-url origin gitn…

大宋咨询(深圳神秘顾客调查)开展某银行分行神秘顾客检查

银行神秘顾客检查是一项重要的服务质量控制活动&#xff0c;旨在通过模拟客户体验来评估银行服务的质量和水平。这种检查方式有助于银行发现问题、改进服务&#xff0c;提升客户满意度。下面将详细介绍如何进行银行神秘顾客检查。大宋咨询&#xff08;深圳银行神秘顾客公司&…

深入浅出Redis(十二):Redis的排序命令Sort

引言 Redis是一款快速、优秀的键值对数据库&#xff0c;提供丰富的数据结构能在各种场景下实现功能&#xff0c;同时也提供丰富的命令来完成各种各样的功能&#xff0c;本篇文章将深入浅出的解析Sort命令的原理以及使用 原理 Sort 命令用来对list、set、zset对象进行排序&am…

springboot组件的单例模式和分布式分析

springboot组件的单例模式和分布式分析 一、基本概念 在Spring Boot应用中&#xff0c;单例模式是非常常见的一种设计模式&#xff0c;它被广泛应用于Bean的生命周期管理。Spring容器默认会将所有的Component、Service、Repository和Controller注解标记的类作为单例对象进行实…

JavaEE实验三:3.5学生信息查询系统(动态Sql)

题目要求: 使用动态SQL进行条件查询、更新以及复杂查询操作。本实验要求利用本章所学知识完成一个学生信息系统&#xff0c;该系统要求实现3个以下功能: 1、多条件查询&#xff1a; 当用户输入的学生姓名不为空&#xff0c;则根据学生姓名进行学生信息的查询&#xff1b; 当用户…