【代码随想录训练营】【Day 35】【贪心-2】| Leetcode 122, 55, 45

【代码随想录训练营】【Day 35】【贪心-2】| Leetcode 122, 55, 45

需强化知识点

  • 贪心:跳跃游戏

题目

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

  • 动态规划
  • 贪心:只要股票第二天涨了,前一天就买,第二就买
class Solution:def maxProfit(self, prices: List[int]) -> int:# dp = [[0] * 2 for _ in range(len(prices))]# # 0 代表当天持有,1 代表当天不持有# dp[0][0] = -prices[0]# result = 0# for i in range(1, len(prices)):#     dp[i][0] = max(dp[i-1][0], dp[i-1][1]-prices[i])#     dp[i][1] = max(dp[i-1][0]+prices[i], dp[i-1][1])#     result = max(result, max(dp[i][0], dp[i][1]))# return resultresult = 0for i in range(1, len(prices)):if prices[i] > prices[i-1]:result += prices[i] - prices[i-1]return result

55. 跳跃游戏

  • cover记录每步能覆盖到的最大范围,只要最终cover能到达最后一个下标,即为True,注意通过 if i <= cover:来控制,在cover范围内都可以更新cover
class Solution:def canJump(self, nums: List[int]) -> bool:cover = 0for i in range(len(nums)):if i <= cover:cover = max(cover, i+nums[i])if cover >= len(nums)-1:return Truereturn False

45. 跳跃游戏 II

  • 最小跳跃数,即每一步都是最远
  • 当到达目前cover,就要跳一步,选择跳到下一步能跳到的最远,因此new_cover要一直更新,维护着下一步能跳到的最远
class Solution:def jump(self, nums: List[int]) -> int:new_cover, cover = 0, 0result = 0if len(nums) == 1:return 0for i in range(len(nums)):new_cover = max(new_cover, nums[i] + i)if i == cover:cover = new_coverresult += 1if cover >= len(nums) - 1:return resultreturn result

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

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

相关文章

three.js官方案例webgl_loader_fbx.html学习

目录 1.1 添加库引入 1.2 添加必要的组件scene,camera,webrenderer等 1.3 模型加载 1.4 半球光 1.5 动画 1.6 换个自己的fbx模型 1.7 fbx模型和fbx动画关联 1.7 html脚本全部如下 1.8 fbx.js全部脚本如下 1.1 添加库引入 import * as THREE from three; import Stats …

AI芯片软件定义硬件架构

软件定义硬件架构 AI 应用正促使芯片制造商和 OEM 重新审视重新配置硬件的可能性。 摩尔定律放缓&#xff0c;软件应用复杂性和规模激增&#xff0c;x86架构CPU运行通用软件的传统方法已无法满足嵌入式和AI应用的高效需求。 在当前x86架构主导的环境中&#xff0c;软硬件间差…

在某云服务器上搭建公网kali linux2.0

前提&#xff1a; 可用的 CVM 实例 挂载一个系统盘之外的盘&#xff0c;安装完成后可卸载&#xff01; 创建实例&#xff0c;安装centos7系统&#xff01; 然后执行fdisk -l看磁盘的情况 在这里我将把镜像写入vdb这块数据盘 非 root 的情况下记得sudo执行以下命令 注意&…

使用 Elastic AI assistant for Observability 来分析日志

在今天的文章中&#xff0c;我们来参考之前的文章 “Elastic AI Assistant for Observability 和 Microsoft Azure OpenAI 入门” 来使用 Elastic AI assistant 分析日志。在本文章中&#xff0c;我们不使用 Azure clould。这样我们之间来进入主题&#xff0c;以免失去注意力。…

DDR、LPDDR和GDDR的区别

1、概况 以DDR开头的内存适用于服务器、云计算、网络、笔记本电脑、台式机和消费类应用&#xff0c;支持更宽的通道宽度、更高的密度和不同的形状尺寸。 以LPDDR开头的内存适合面向移动和汽车这些对规格和功耗非常敏感的领域&#xff0c;提供更窄的通道宽度和多种低功耗运行状态…

OSPF减少LSA更新量1

OSPF的LSA优化 一、汇总——优化骨干区域 (1)域间汇总ABR设备基于某个区域的1/2类LSA计算所得的最佳路由&#xff0c;共享给其他区域时&#xff0c;进行汇总传递。 [r2]ospf 1 [r2-ospf-1]area 1——明细路由所在区域&#xff0c;该ABR设备必须和明细路由在同一区域 [r2-ospf…

1738. 找出第 K 大的异或坐标值 Medium

给你一个二维矩阵 matrix 和一个整数 k &#xff0c;矩阵大小为 m x n 由非负整数组成。 矩阵中坐标 (a, b) 的 目标值 可以通过对所有元素 matrix[i][j] 执行异或运算得到&#xff0c;其中 i 和 j 满足 0 < i < a < m 且 0 < j < b < n&#xff08;下标从 …

数据集007:垃圾分类数据集(含数据集下载链接)

数据集简介 本数据拥有 训练集&#xff1a;43685张&#xff1b; 验证集&#xff1a;5363张&#xff1b; 测试集&#xff1a;5363张&#xff1b; 总类别数&#xff1a;158类。 部分代码&#xff1a; 定义数据集 class MyDataset(Dataset):def __init__(self, modetrain, …

25台es集群停止步骤

停止切割服务 使用Kibana Dev Tools 打开Kibana&#xff0c;导航到Dev Tools页面。在Console标签页中&#xff0c;执行以下命令来临时禁止分片的自动分配 Json 1PUT _cluster/settings 2{ 3 "transient": { 4 "cluster.routing.allocation.enable":…

win10/win11 优先调用大核的电源计划性能设置

前言 大小核&#xff0c;即Intel 12代开始的P-core&#xff08;性能核&#xff0c;一般叫大核&#xff09;和E-core&#xff08;能效核&#xff0c;一般叫小核&#xff09;异核架构。说下个人理解&#xff0c;就是英特尔为了增加cpu性能&#xff0c;但是又因为架构和功耗的限制…

网络通讯聊天工具的实现

学习网络与通信&#xff0c;实现聊天界面能够通过服务器进行私聊和群聊的功能。 1.服务器&#xff1a;ServeSocket 客户端先发送消息给服务器&#xff0c;服务器接受消息后再发送给客户端。 利用服务器随时监听。等待客户端的请求&#xff0c;一旦有请求便生产一个socket套接…

白杨SEO:为什么任何“创业”都要先找需求?以自己大学真实故事举例

创业&#xff0c;一般理解&#xff0c;狭义讲是指创办了个企业&#xff0c;广义是指创造一番事业。图片在公号白杨SEO上看。 我之所以把“创业”加了个双引号&#xff0c;除了上面狭义或者广义之外&#xff0c;我觉得像个体工作室、个人IP、自由职业甚至线下各类路边摊也可以算…

解决mybatis拦截器注入依赖后为null问题

需求是在mybatis拦截器中注入RedisUtils用来缓存一些信息。 拦截器 Component Intercepts({Signature(type Executor.class, method "update", args {MappedStatement.class, Object.class}) }) public class MybatisInterceptor implements Interceptor {priva…

模型实战(20)之 yolov8分类模型训练自己的数据集

yolov8分类模型训练自己的数据集 yolov8,一个实时快速的端到端的集检测、分割、分类、姿态识别于一体的视觉算法库/框架本文将给出yolov8 分类模型的数据集制作格式及训练流程 1. 环境搭建 关于虚拟环境的搭建真的是老生常谈了,给出一个简单的搭建流程吧#新建虚拟环境 conda …

软件系统开发标准流程文档(Word原件)

目的&#xff1a;规范系统开发流程&#xff0c;提高系统开发效率。 立项申请需求分析方案设计方案评审开发调整测试阶段系统培训试运行测试验收投入使用 所有文档过去进主页获取。 软件项目相关全套精华资料包获取方式①&#xff1a;点我获取 获取方式②&#xff1a;本文末个人…

DataFrame—数据汇总8

文章最前&#xff1a; 我是Octopus&#xff0c;这个名字来源于我的中文名--章鱼&#xff1b;我热爱编程、热爱算法、热爱开源。所有源码在我的个人github &#xff1b;这博客是记录我学习的点点滴滴&#xff0c;如果您对 Python、Java、AI、算法有兴趣&#xff0c;可以关注我的…

《Ai企业知识库》-模型实践-rasa开源学习框架-搭建简易机器人-环境准备(针对windows)-02

rasa框架 Conversational AI Platform | Superior Customer Experiences Start Here 阿丹: 其实现在可以使用的ai的开发框架有很多很多&#xff0c;就需要根据各个模型的能力边界等来讨论和设计。 rasa整体流程以及每一步的作用 NLU(自然语言理解): 自然语言理解&#xff…

通过Ubuntu虚拟机+Linux移植LVGL并通过linux Frame buffer显示

文章参考&#xff1a;https://gitee.com/socbis/linux-lvgl lvgl on linux Frame buffer 主机环境: Ubuntu 18.04lvgl 8.0.1 获取源码并运行demo 获取源码 需要3样东西来构建demo : lvgl核心控件库: 从此处获取源码 lvgl&#xff0c;选择版本 Release v8.0.1. 显示和触摸接…

【项目问题解决】 java.lang.IllegalArgumentException: XML fragments parsed

java.lang.IllegalArgumentException: XML fragments parsed from previous mappers does not contain value for com.xxx.xxx.xxx.xxx.dao.SingleApasInfoDao.selectListCondition 目录 【项目问题解决】 java.lang.IllegalArgumentException: XML fragments parsed from pr…

嵌入式之译码器

系列文章目录 译码器嵌入式之译码器 嵌入式之译码器 系列文章目录一、译码器定义二、常见类型的译码器三、工作原理 一、译码器定义 译码器&#xff08;Decoder&#xff09;是一种数字电路&#xff0c;其主要功能是从输入的编码信号中解码出特定的信息或控制信号。 译码器通常…