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

贪心算法-买卖股票的最佳时机

买卖股票的最佳时机

给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天
的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股
票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0

输入:整型数组
输出:整型变量
思路:通过求解当天与前一天的差,得到该题可以转换为求子数组的最大值

class Solution {public int maxProfit(int[] prices) {//定义新的数组来维护int[] tmpNum = new int[prices.length];tmpNum[0] = 0;//定义preint pre = 0;int maxNum = 0;for(int i = 1;i < prices.length;i++){tmpNum[i] = prices[i] - prices[i-1];}for(int x : tmpNum){pre = Math.max(pre + x,x);maxNum = Math.max(pre,maxNum);}return maxNum;}
}

然后使用贪心算法

class Solution {public int maxProfit(int[] prices) {//每次都进行维护int minPrice = Integer.MAX_VALUE;int maxprofit = 0;for(int x : prices){//更新最大利润maxprofit = Math.max(maxprofit,x - minPrice);//更新最小值minPrice = Math.min(minPrice,x);}return maxprofit;}
}
http://www.lryc.cn/news/539424.html

相关文章:

  • 文本操作基础知识:正则表达式
  • 【Scrapy】Scrapy教程6——提取数据
  • PHP 网络编程介绍
  • 【C语言】C语言 食堂自动化管理系统(源码+数据文件)【独一无二】
  • mybatis存储过程返回list
  • 【vue】nodejs版本管理利器:nvm
  • 负载测试工具有哪些?
  • 路由基础 | 路由引入实验 | 不同路由引入方式存在的问题
  • 网络安全不分家 网络安全不涉及什么
  • 智能编程助手功能革新与价值重塑之:GitHub Copilot
  • wordpress企业官网建站的常用功能
  • 讯方·智汇云校华为官方授权培训机构
  • C语言中的文件
  • 利用分治策略优化快速排序
  • 前端工程化的具体实现细节
  • 数据分析--数据清洗
  • ✨1.HTML、CSS 和 JavaScript 是什么?
  • QT--常用对话框
  • 基于 Ollama 工具的 LLM 大语言模型如何部署,以 DeepSeek 14B 本地部署为例
  • 图的最小生成树算法: Prim算法和Kruskal算法(C++)
  • WPS的AI助手进化跟踪(灵犀+插件)
  • 我用AI做数据分析之数据清洗
  • 一周学会Flask3 Python Web开发-request请求对象与url传参
  • 【ISO 14229-1:2023 UDS诊断(ECU复位0x11服务)测试用例CAPL代码全解析④】
  • 网络技术变迁:从IPv4走向IPv6
  • DeepSeek教unity------事件管理
  • 确保设备始终处于最佳运行状态,延长设备的使用寿命,保障系统的稳定运行的智慧地产开源了
  • RedisTemplate存储含有特殊字符解决
  • 28、深度学习-自学之路-NLP自然语言处理-做一个完形填空,让机器学习更多的内容程序展示
  • 【NLP 22、语言模型 language model】