208.贪心算法:买卖股票的最佳时机||(力扣)

代码解决
class Solution { public:int maxProfit(vector<int>& prices) {int result = 0; // 初始化结果为0,表示初始利润为0// 从第二天开始遍历价格数组for (int i = 1; i < prices.size(); i++) {// 如果当天价格比前一天价格高,则将差价加入到结果中result += max(0, prices[i] - prices[i - 1]);}return result; // 返回最终的最大利润} };代码解释
初始化:
result初始化为0,用于存储累积的最大利润。遍历价格数组:
- 从第二天开始(即
i=1),遍历价格数组prices。- 对于每一天
i,比较当天的价格prices[i]和前一天的价格prices[i-1]。- 如果当天的价格高于前一天的价格,即
prices[i] > prices[i-1],则计算这两天的差价prices[i] - prices[i-1]并将其加入到result中。否则,差价为负数或零,不进行任何操作。返回结果:
- 返回
result,即通过在每个上涨的时段进行买卖得到的最大利润。示例
假设有一个价格数组
prices = [7,1,5,3,6,4]:
- 第1天到第2天:1 - 7 = -6,不加到利润中。
- 第2天到第3天:5 - 1 = 4,加到利润中,
result = 4。- 第3天到第4天:3 - 5 = -2,不加到利润中。
- 第4天到第5天:6 - 3 = 3,加到利润中,
result = 4 + 3 = 7。- 第5天到第6天:4 - 6 = -2,不加到利润中。
最终,
result = 7,表示最大利润为7。时间和空间复杂度
- 时间复杂度:O(n),其中 n 是价格数组的长度。算法仅需遍历一次价格数组。
- 空间复杂度:O(1),只使用了常数空间来存储变量
result。
相关文章:
208.贪心算法:买卖股票的最佳时机||(力扣)
代码解决 class Solution { public:int maxProfit(vector<int>& prices) {int result 0; // 初始化结果为0,表示初始利润为0// 从第二天开始遍历价格数组for (int i 1; i < prices.size(); i) {// 如果当天价格比前一天价格高,则将差价加…...
【论文阅读】伸缩密度比估计:Telescoping Density-Ratio Estimation
文章目录 一、文章概览(一)问题提出(二)文章工作 二、判别比估计和密度鸿沟问题三、伸缩密度比估计(一)核心思想(二)路标创建(三)桥梁构建(四&…...
MongoDB数据库 MQL (MongoDB Query Language)语句大全
基本命令 连接到 MongoDB mongo显示所有数据库 show dbs选择(或创建)数据库 db集合操作 显示当前数据库中的所有集合 show collections创建集合 db.createCollection("myCollection")删除集合 db.myCollection.drop()文档操作 插入文…...
Java代码基础算法练习-计算平均身高-2024.07.02
任务描述: n个同学站成一排,求它们的平均身高 解决思路: 输入的学生人数为 for 循环次数,循环中每输入一个值就添加在总数中,循环结束总数除以对应的学生人数得到平均身高 代码示例: package a4_2024_07;…...
BIOS设置与系统分区
📑打牌 : da pai ge的个人主页 🌤️个人专栏 : da pai ge的博客专栏 ☁️宝剑锋从磨砺出,梅花香自苦寒来 目录 一BIOS 1破解密码的前提 2B…...
linux的安装程序 与 文件 相关的命令
软件安装卸载命令 软件包介绍软件包命名格式dpkg命令apt-get命令apt-get命令 压缩和解压命令 压缩文件后缀 压缩命令打包和解包命令 tar命令 文件分割命令 split命令 文件操作相关命令 cat命令head命令tail命令more命令less命令管道命令wc 命令grep 命令find 命令cut 命令sort …...
SAP_ABAP相关日语单词
基本概念 1. プログラミング言語 (プログラミングげんご, Puroguramingu gengo) - 编程语言 2. 開発 (かいはつ, Kaihatsu) - 开发 3. システム (システム, Shisutemu) - 系统 4. モジュール (モジュール, Mojūru) - 模块 5. トランザクションコード (トランザクションコード,…...
Python中的除法操作详解
在Python编程中,除法是一个基础但极其重要的算术操作。Python提供了多种除法运算方式,以适应不同的计算需求。以下是对Python中除法操作的全面介绍,包括示例代码。 1. 普通除法 / 普通除法使用/运算符,它返回一个浮点数结果&…...
第1章 人工智能的基础概念与应用导论
亲爱的读者朋友们,你们好!欢迎来到这个充满神奇与奥秘的人工智能世界。我知道,对于很多人来说,人工智能(AI)可能是个既神秘又高大上的词汇,仿佛遥不可及,只存在于科幻电影或者顶级科…...
jenkins api部署时,一直提示pending-Finished waiting
问题: 调用jenkins api部署时,一直提示pending-Finished waiting 解决方案: 这个问题困扰了很久,一直没有思路,后面看到调用jenkinsAPI本身会出现一段提示,pending in the quiet period,通过搜…...
AI在创造还是毁掉音乐之论文
AI在创造还是毁掉音乐? 简介:最近一个月,轮番上线的音乐大模型,一举将素人生产音乐的门槛降到了最低,并掀起了音乐圈会不会被AI彻底颠覆的讨论。短暂的兴奋后,AI产品的版权归属于谁,创意产业要…...
C++ STL容器:序列式容器-数组string,vector,array,bitset
摘要: CC STL(Standard Template Library,标准模板库)在C编程中的重要性不容忽视,STL提供了一系列容器、迭代器、算法和函数对象,这些组件极大地提高了C程序的开发效率和代码质量。 STL 容器 分为 2 大类 …...
ElementUI样式优化:el-input修改样式、el-table 修改表头样式、斑马格样式、修改滚动条样式、
效果图: 1、改变日期时间组件的字体颜色背景 .form-class ::v-deep .el-date-editor { border: 1px solid #326AFF; background: #04308D !important; } .form-class ::v-deep .el-date-editor.el-input__wrapper { box-shadow: 0 0 0 0px #326AFF inset; } // 输入…...
大数据面试题之Spark(6)
Spark输出文件的个数,如何合并小文件? Spark的driver是怎么驱动作业流程的? Spark SQL的劣势? 介绍下Spark Streaming和Structed Streaming Spark为什么比Hadoop速度快? DAG划分Spark源码实现? Spark Streaming的双流join的过程,怎么做的? …...
SpringSecurity中文文档(Servlet Anonymous Authentication)
Anonymous Authentication Overview 通常认为采用“默认拒绝”立场是良好的安全实践,您明确指定允许的内容并拒绝其他所有内容。定义未经身份验证的用户可以访问的内容是类似的情况,特别是对于 Web 应用程序。许多网站要求用户必须经过身份验证才能访问…...
【Spring Boot 事务管理】
Spring Boot 事务管理 一、Spring Boot中的事务管理1.声明式事务管理Transactional注解基本使用配置选项 2.编程式事务管理TransactionTemplatePlatformTransactionManager 二、Transactional注解深入1.基本使用基本属性 2.传播行为3.隔离级别4.事务超时设置5.回滚规则 三、事务…...
【C++】C++指针在线程中调用与受保护内存空间读取方法
引言 在C的多线程编程中,正确地管理内存和同步访问是确保程序稳定性和安全性的关键。特别是当涉及到指针在线程中的调用时,对受保护内存空间的访问必须谨慎处理,以防止数据竞争、死锁和内存损坏等问题。本文将详细探讨C指针在线程中调用时如何…...
安全隔离上网的有效途径:沙箱
在数字化浪潮日益汹涌的今天,网络安全成为了不可忽视的重要议题。沙箱技术作为一种高效的隔离机制,为企业和个人提供了一种在享受网络便利的同时,保障系统安全的解决方案。本文旨在深入探讨沙箱技术如何做到隔离上网,从而为用户提…...
jenkins下后台运行链接Jenkins服务脚本方法
为了编写一个用于在后台运行 Jenkins agent 的批处理脚本,你可以使用 start 命令来启动 Java 进程并将其设置为在后台运行。以下是一个示例批处理脚本 run_agent.bat: bat echo off setlocalREM Set the path to the Jenkins agent JAR file set AGENT…...
宠物空气净化器哪个品牌性价比高?宠物空气净器Top3品牌推荐
养猫确实给家庭带来了无尽的欢乐,但猫毛无处不在的问题确实让不少猫主人感到头疼。不论是长毛猫还是短毛猫,它们掉落的浮毛飘浮在空气中,不仅影响家居环境的整洁度,还可能成为过敏的源头。因此,如何高效地处理这些猫浮…...
Dramatron:AI驱动剧本创作的协同进化方法
Dramatron:AI驱动剧本创作的协同进化方法 【免费下载链接】dramatron Dramatron uses large language models to generate coherent scripts and screenplays. 项目地址: https://gitcode.com/gh_mirrors/dr/dramatron 问题:当代创作者的三重困境…...
新书推荐:《尊严的颓败》在废墟之上,寻找灵魂的微光
当世界沦为巨大的名利场,当人被简化为数据与欲望的载体,我们该如何定义“人”?又该如何安放那颗被称为“灵魂”的种子?洛本的《尊严的颓败》并非一本让人阅读时感到轻松愉悦的书,它更像是一把手术刀,精准地…...
告别蓝牙!用STM32F103和NRF24L01搭建低成本2.4G无线通信,实测传输距离与稳定性
STM32F103与NRF24L01构建高性能2.4G私有通信系统实战指南 在物联网设备爆发式增长的今天,无线通信模块的选择成为硬件开发者面临的首要难题。面对市面上琳琅满目的蓝牙、Wi-Fi和私有协议模块,如何根据项目需求选择最具性价比的解决方案?本文将…...
【C++】三大图像加载库实战对比:libpng、FreeImage与stb_image的选型指南
1. 为什么需要图像加载库? 在C项目中处理图像文件时,直接操作二进制数据就像用螺丝刀吃牛排——理论上可行,但实际体验极其糟糕。图像加载库就是帮我们解决这个问题的餐具套装。以最常见的PNG文件为例,它可能包含调色板、压缩数据…...
PLC新手必看:三菱FX2N顺序功能图的5个常见错误及解决方法
三菱FX2N顺序功能图实战避坑指南:从原理到调试的完整解决方案 第一次接触三菱FX2N的顺序功能图编程时,那种既兴奋又忐忑的心情至今记忆犹新。看着逻辑清晰的流程图在仿真中运行失常,或是设备突然"抽风"时的茫然,是每个P…...
nli-distilroberta-base生产环境:金融风控中合同条款中立性识别实践
nli-distilroberta-base生产环境:金融风控中合同条款中立性识别实践 1. 项目背景与价值 在金融风控领域,合同条款的准确理解至关重要。传统人工审核方式效率低下且容易遗漏关键细节,而自然语言理解技术可以大幅提升审核效率和准确性。nli-d…...
保姆级教程:用SolidWorks和PCL把装配体转成PCD点云(附完整命令)
从SolidWorks装配体到PCL点云的完整转换指南 在工业设计、逆向工程和三维视觉处理领域,将CAD模型转换为点云数据是一个常见但容易出错的过程。许多工程师和研究人员在使用SolidWorks完成设计后,需要将装配体转换为点云格式(如PCD)…...
Dify 文本语意识别与智能补全实战指南
1. 认识Dify平台与文本语意识别 第一次接触Dify时,我就被它的"零代码"特性惊艳到了。这个平台把复杂的AI能力封装成了像搭积木一样简单的模块,特别是它的文本语意识别功能,能准确理解用户输入的半句话甚至几个关键词。比如用户输入…...
nli-distilroberta-base实战案例:企业知识库问答系统中的逻辑一致性校验
nli-distilroberta-base实战案例:企业知识库问答系统中的逻辑一致性校验 1. 项目概述 在构建企业知识库问答系统时,确保回答与问题之间的逻辑一致性是一个关键挑战。nli-distilroberta-base是基于DistilRoBERTa模型的自然语言推理(NLI)服务,…...
STM32模拟Linux内核自动初始化机制实现
STM32模拟Linux内核自动初始化机制实现1. 项目概述1.1 技术背景在传统嵌入式开发中,程序通常按照顺序逻辑执行,当系统复杂度增加时会导致代码臃肿、模块耦合紧密。Linux内核通过initcall机制实现了模块化初始化,本项目在STM32平台上模拟实现了…...
