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

代码随想录Day41_DP_stockB

买卖股票1

给定时间序列中一次买入

给定一个股票i天内的价格走势。

暴力解法

class Solution {
public:int maxProfit(vector<int>& prices) {int result=0;for (int i=0;i<prices.size();i++){for(int j=i+1;j<prices.size();j++){result=max(result,prices[j]-prices[i]);}}return result; }
};

超时警告。

贪心解法

取差值最小,并且最大值在最小值的右面。

class Solution {
public:int maxProfit(vector<int>& prices) {int low = INT_MAX;int result = 0;for (int i = 0; i < prices.size(); i++) {low = min(low, prices[i]);result = max(result, prices[i] - low);}return result;}
};

暴力的时间复杂度:n*n
贪心的时间复杂度:n

动态规划

DP数组:i天时间间隔中所能获得的最大利润;

class Solution {
public:int maxProfit(vector<int>& prices) {int len = prices.size();if (len == 0)return 0;vector<vector<int>> dp(len, vector<int>(2));dp[0][0] -= prices[0];dp[0][1] = 0;for (int i = 1; i < len; i++) {dp[i][0] = max(dp[i - 1][0], -prices[i]);dp[i][1] = max(dp[i - 1][1], prices[i] + dp[i - 1][0]);}return dp[len - 1][1];}
};

奇奇怪怪,也许看完第三例会好一点。

买卖股票的最佳时机2

class Solution {
public:int maxProfit(vector<int>& prices) {int result=0;for(int i=1;i<prices.size();i++){result+=max(prices[i]-prices[i-1],0);}return result;}
}; 
http://www.jsqmd.com/news/101125/

相关文章:

  • LobeChat能否对接GitBook?技术文档智能维护方案
  • TranslucentTB启动失败?终极修复指南全解析
  • Vue可视化打印插件hiprint终极使用手册:从零构建专业级打印系统
  • 高效实现Unity游戏自动翻译的完整教程:XUnity.AutoTranslator使用指南
  • OpenCore Legacy Patcher:让老款Mac重获新生的升级神器?
  • 六音音源修复技术全解析:从原理到实践
  • LobeChat性能优化技巧:降低延迟提升响应速度
  • 20 万新能源 SUV 闭眼入!这 4 款车空间续航双在线,车主口碑爆棚
  • HTML Learn Data Day 0
  • docker 目录下的overlay2层的太多,导致占用大量占用磁盘空间怎么办呢。【docker目录清理】
  • 数据编程规范
  • 5(补)
  • 15 万级新能源 SUV 哪些值得入手?懂车人都选这 4 款
  • C# FileStream拷贝大文件
  • xilinx常用文档说明
  • [核桃] - P10770 反转子区间
  • AI绘画不是“终点”,而是创作者的“新起点”
  • LeagueAkari智能游戏助手:5大核心功能全面解析与实战应用指南
  • MyBatis 全面解析 Spring Boot 集成实战
  • [ICPC 2022 Nanjing R] 工厂重现
  • 微信多设备登录终极解决方案:WeChatPad平板模式完整指南
  • 详细介绍:算法王冠上的明珠——动态规划之斐波那契数列问题
  • 音乐格式解放攻略:NCM转MP3轻松实现跨平台播放
  • 写了这么多年 Java,这几个神仙技巧你真的用过吗?
  • Zipkin 深度解析:核心原理、集成实战与最佳实践
  • 20 万级新能源 SUV 标杆车型盘点:从技术到体验的全面对比
  • Java新手做毕设:用雷池WAF护SpringBoot项目,避免演示时出洋相
  • 微服务踩坑实录:SpringCloud集群用雷池WAF,解决3个跨服务防护难题
  • Google Drive下载神器:gdrivedl使用完全指南
  • 7.2.2-bpf对tcp请求的监控(项目)