代码随想录算法训练营DAY32|122.买卖股票的最佳时机II、55. 跳跃游戏、45.跳跃游戏II

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

  • 题目链接:122.买卖股票的最佳时机II
class Solution(object):def maxProfit(self, prices):""":type prices: List[int]:rtype: int"""max_profit = 0profit = 0buyin_idx = 0for i in range(len(prices)):print(buyin_idx)if prices[i]< prices[buyin_idx]:buyin_idx=iif prices[i]-prices[buyin_idx]>profit and i<len(prices)-1:profit=prices[i]-prices[buyin_idx]elif prices[i]-prices[buyin_idx]>profit and i==len(prices)-1:profit=prices[i]-prices[buyin_idx]max_profit+=profitelse:max_profit+=profitprofit=0buyin_idx=ireturn max_profit
class Solution(object):def maxProfit(self, prices):""":type prices: List[int]:rtype: int"""max_profit = 0for i in range(1, len(prices)):if prices[i]-prices[i-1]>0:max_profit+=prices[i]-prices[i-1]return max_profit

55.跳跃游戏

  • 题目链接:55.跳跃游戏
  • 注意这里是while i<=cover
class Solution(object):def canJump(self, nums):""":type nums: List[int]:rtype: bool"""if len(nums)==1:return Truecover = 0i=0while i<=cover:cover = max(i+nums[i], cover)if cover>=len(nums)-1:return Truei+=1return False

45.跳跃游戏II

  • 题目链接:45.跳跃游戏II
  • step+1的条件(走不下去了再+1)
class Solution(object):def jump(self, nums):""":type nums: List[int]:rtype: int"""if len(nums)==1:return 0nextdistance=0curdistance=0i=0step=0for i in range(len(nums)):nextdistance=max(i+nums[i], nextdistance)if curdistance>=len(nums)-1:return stepif i==curdistance:curdistance=nextdistancestep+=1return step

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

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

相关文章

力扣第185题:部门工资前三高的员工

关注微信公众号 数据分析螺丝钉 免费领取价值万元的python/java/商业分析/数据结构与算法学习资料 在本篇文章中&#xff0c;我们将详细解读力扣第185题“部门工资前三高的员工”。通过学习本篇文章&#xff0c;读者将掌握如何使用SQL语句来解决这一问题&#xff0c;并了解相关…

使用selenium/drissionpage时如何阻止chrome自动跳转http到https

加个启动参数&#xff1a; --allow-running-insecure-content没了 参考文章&#xff1a;List of Chromium Command Line Switches

Directory Opus 13.6 可用的apk文件右键菜单脚本

// apk文件的右键经过adb安装的脚本,可以在多个设备中选择function OnClick(clickData) {try {// 检查是否选中了文件if (clickData.func.sourcetab.selected_files.count 0) {DOpus.Output("没有选中任何文件");return;}// 获取选中的文件名var selectedFile clic…

JSTL知识点讲解与配置

JSTL&#xff08;JavaServer Pages Standard Tag Library&#xff09;是Java EE平台中的一个标准库&#xff0c;提供了一组用于在JSP&#xff08;JavaServer Pages&#xff09;中简化和标准化常见任务的标签。这些标签封装了很多常见的JSP功能&#xff0c;可以使得JSP页面更加简…

18-Nacos-NacosRule负载均衡

18-Nacos-NacosRule负载均衡 1.根据集群负载均衡 1.修改order-service中的application.yml,设置集群为HZ: spring:cloud:nacos:server-addr: localhost:8848 #nacos服务端地址discovery:cluster-name: HZ #配置集群名,也就是机房位置,例如:HZ,杭州2.然后在order-servi…

服务部署:Ubuntu安装搭建docker

1. 更新系统包 首先&#xff0c;确保你的系统包是最新的&#xff1a; sudo apt-get update sudo apt-get upgrade 2. 安装必要的依赖包 安装一些必要的依赖包&#xff0c;以便后续添加 Docker 的 APT 源&#xff1a; sudo apt-get install apt-transport-https ca-certifi…

LabVIEW软件开发人员如何在软件开发中捕捉需求?

在LabVIEW软件开发过程中&#xff0c;捕捉需求是确保项目成功的关键步骤。以下是一个系统化的方法&#xff0c;帮助LabVIEW软件开发人员有效地捕捉、分析和管理需求。 步骤1&#xff1a;需求收集 1.1 与客户沟通 与客户进行初步沟通&#xff0c;了解项目的背景、目标和期望。…

天工开物 #14 分析时序数据:从 InfluxQL 到 SQL 的演变

近年来&#xff0c;时序数据的增长是 Data Infra 领域一个不容忽视的趋势。这主要得益于万物互联带来的自然时序数据增长&#xff0c;以及软件应用上云和自身复杂化后的可观测性需求。前者可以认为是对联网设备的可观测性&#xff0c;而可观测性主要就建构在设备或应用不断上报…

【C#】WinForm关闭新(二级)界面使主程序关闭

参考视频&#xff1a;https://www.bilibili.com/video/BV1JY4y1G7jo?p14&vd_source1c57ab1b2e551da5b65c0dfb0f05a493 1.背景介绍 主程序界面&#xff0c;点击弹出二级界面&#xff08;同时隐藏主界面&#xff09;&#xff0c;不做任何设置&#xff0c;这时关闭二级界面…

Java基础_Stream流

Java基础_Stream流 Stream流的简单使用Stream流的获取Stream流的中间方法Stream流的终结方法综合练习数字过滤字符串过滤并收集自定义对象过滤并收集 来源Gitee地址 Stream流的简单使用 public class StreamDemo01 {public static void main(String[] args) {/*** 创建集合添加…

java.lang.IllegalArgumentException: This Style does not belong to the supplied Workbook异常的解决办法

java.lang.IllegalArgumentException: This Style does not belong to the supplied Workbook异常的解决办法 文章目录 报错问题报错原因解决方法 报错问题 java.lang.IllegalArgumentException: This Style does not belong to the supplied Workbook异常 报错原因 在Java中&a…

Ubuntu虚拟机使用纯命令行对根分区进行扩展

Ubuntu虚拟机使用纯命令行对根分区进行扩展 前排提示 因为Ubuntu再安装时&#xff0c;根分区是没有使用LVM进行磁盘管理的&#xff0c;所以如果想扩展根分区&#xff0c;我们不得不使用另外一种暴力的方法。简单来说就是利用fdisk删除原来的根分区再基于原来的起始块号重新建…

C++对象池设计与实现

目录 一、对象池简介 1.1 池化技术 1.2 什么是对象池 1.3 对象池分配策略 二、C new和delete运算符重载 三、实现一个对象池框架 3.1 策略接口 四、实现几种对象池的分配策略 4.1 数组策略 4.2 堆策略 ​编辑 4.3 栈策略 4.4 区块策略 一、对象池简介 1.1 池化技…

【CS.AL】八大排序算法 —— 快速排序全揭秘:从基础到优化

文章目录 1. 快速排序简介1.1 定义1.2 时间复杂度1.3 相关资源 2. 最优的Partition算法 &#x1f525;2.1 Introsort简介2.2 过程示例 3. 非递归快速排序3.1 实现 4. 递归快速排序4.1 实现 5. 有问题的Partition5.1 实现 6. 三中位数主元选择6.1 实现 7. 总结 1. 快速排序简介 …

新增FTP功能、支持添加Redis远程数据库,专业版新增网站监控和黑金主题,1Panel开源面板v1.10.10版本发布

2024年6月7日&#xff0c;现代化、开源的Linux服务器运维管理面板1Panel发布v1.10.10版本。 在这一版本中&#xff0c;1Panel新增了多项实用功能。社区版方面&#xff0c;新增了FTP功能、支持添加Redis远程数据库、支持设置压缩密码&#xff0c;并新增了清理镜像构建缓存的功能…

[ue5]建模场景学习笔记(5)——必修内容可交互的地形,交互沙(2)

1需求分析&#xff1a; 继续制作可交互沙子内容&#xff0c;前面我们已经让角色在指定区域留下痕迹&#xff0c;那么能否让区域移动起来&#xff0c;这样才能逐步满足角色走到哪里都能产生交互痕迹&#xff0c;满足更大的地图。 2.操作实现&#xff1a; 1.首先建立角色能产生…

翻译《The Old New Thing》- How do I obtain the computer manufacturer’s name?

How do I obtain the computer manufacturers name? - The Old New Thing (microsoft.com)https://devblogs.microsoft.com/oldnewthing/20081218-00/?p19783 Raymond Chen 2008年08月08日 如何获取计算机制造商的名字&#xff1f; 一位客户想要一种方法来确定计算机制造商的…

栈-20.有效的括号

20. 有效的括号 - 力扣&#xff08;LeetCode&#xff09; 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须…

C语言为什么在使⽤图形函数时要⾸先初始化图形模式?

一、问题 在TC 中开发图形程序&#xff0c;为什么要先执⾏ initgraph( ) &#xff0c;这个函数是⼲什么⽤的&#xff1f; 二、解答 在DOS 环境下&#xff0c;PC屏幕的显示分为字符模式和图形模式两种。TC 2.0 默认⼯作在字符模式下。在该模式下&#xff0c;屏幕由 25 ⾏ 80 列…

C# .NET 异步实现方式

一、异步编程模式 .NET 提供了执行异步操作的三种模式&#xff1a; 基于任务的异步模式 (TAP) &#xff0c;该模式使用单一方法表示异步操作的开始和完成。 TAP 是在 .NET Framework 4 中引入的。 这是在 .NET 中进行异步编程的推荐方法。 C# 中的 async 和 await 关键词以及 …