【算法/贪心算法/股票问题】题解+详细备注(共2题)
算法 详细 题解 贪心 股票 备注 问题
2023-09-11 14:20:02 时间
【算法/贪心算法/股票问题】题解+详细备注(共2题)
122.买卖股票的最佳时机II
class Solution {
public:
int maxProfit(vector<int>& prices) {
int n = prices.size();
int result{};
// 贪心求解:只要当前价格>前一天价格,就进行一次买卖
for(int i{};i<n-1;++i){
if(prices[i+1] - prices[i] > 0){
result+=(prices[i+1]-prices[i]);
}
}
return result;
}
};
714.买卖股票的最佳时机含手续费
class Solution {
public:
int maxProfit(vector<int>& prices, int fee) {
int n = prices.size();
int result{};
int minPrices{prices[0]}; // 记录最小价格
for(int i = 1;i<n;++i){
if(prices[i] < minPrices) minPrices = prices[i];
if(prices[i] > minPrices && prices[i] <= minPrices+ fee){
continue;
}
// 贪心,只要遇到当前价格大于最小价格和手续费的和,就进行买卖(不是真正的买卖)
if(prices[i] - minPrices > fee){
result +=(prices[i] -minPrices - fee);
minPrices=prices[i] - fee; // 要让minPrice = prices[i] - fee;,这样在明天收获利润的时候,才不会多减一次手续费!
}
}
return result;
}
};
相关文章
- 【转】带约束的多目标优化进化算法综述
- 基于prony算法的参数辨识算法的仿真——详细版
- 操作系统4小时速成:复习内存管理,内部碎片和外部碎片,页式存储管理,段式存储管理,段页式存储管理,虚拟内存,页面置换算法,LRU内存替换算法
- web前端学习笔记-瀑布流的算法分析与代码实现
- 《高性能科学与工程计算》——3.5 算法分类和访存优化
- TCP快速重传与快速恢复原理分析(四种不同的算法)
- 求最短路径的三种算法: Ford, Dijkstra和Floyd
- 算法设计与分析——暴力算法关于KMP算法中next函数的详细解析
- 【算法/位运算】题解+详细备注(共14题)
- 【算法/动态规划/打家劫舍问题】题解+详细备注(共3题)
- 【算法/贪心算法/两个维度权衡问题】题解+详细备注(共2题)
- 汉诺塔算法
- 算法提高 P1001
- 编程算法基础-3.2自底向上风格
- JVM:这是一份全面 & 详细的 垃圾收集算法(GC) 学习指南