每日小记-买股票,数组最大增量差**未完成
2022/2/26 23:30:08
本文主要是介绍每日小记-买股票,数组最大增量差**未完成,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
问题就是一个数组,代表每天的股票价格,买了再卖找到最大的利润值
1.只许买卖一次
动态规划or最小前缀值
public int maximumDifference(int[] nums) { if (nums.length==0||nums==null)return -1; int res=-1;int premin=nums[0]; for (int i = 0; i < nums.length; i++) { if(nums[i]>premin){ res=Math.max(nums[i]-premin,res); } else{ premin=nums[i]; } } return res; }
2.买卖多次,但必须是买-卖光-买-卖光
整个问题等价于寻找 x 个不相交的区间,使得利益最大
贪心算法
需要说明的是,贪心算法只能用于计算最大利润,计算的过程并不是实际的交易过程。
public int maxProfit(int[] prices) { int ans = 0; int n = prices.length; for (int i = 1; i < n; ++i) { ans += Math.max(0, prices[i] - prices[i - 1]); } return ans; }
动态规划
过后补充
这篇关于每日小记-买股票,数组最大增量差**未完成的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)
- 2024-05-30【Java】百万数据excel导出功能如何实现
- 2024-05-30我们小公司,哪像华为一样,用得上IPD(集成产品开发)?
- 2024-05-30java excel上传--poi
- 2024-05-30安装笔记本应用商店的pycharm,再安排pandas等模块,说是没有打包工具?
- 2024-05-29java11新特性
- 2024-05-29哪些无用敏捷指标正在破坏敏捷转型?
- 2024-05-29鸿蒙原生应用再新丁!新华社 入局鸿蒙
- 2024-05-29设计模式 之 迭代器模式(Iterator)