刷leetcode hot100--2 贪心

121. 买卖股票的最佳时机 - 力扣(LeetCode)

贪心:

通过局部最优,推出整体最优。

自己手动模拟,如果模拟可行,就可以试一试贪心策略 ;如果不可行,可能需要动态规划

验证可不可以用贪心算法:最好用的策略就是举反例,如果想不到反例,那么就试一试贪心吧

初步思路: min,max min在max前面,解决;否则,O(n^2)

答案思路:

买的一定是卖之前max,维护min买max利润 (O(n))

复制代码
class Solution {
public:
    int maxProfit(vector<int>& prices) {
        //买入是卖之前min的
        int profit = 0;
        int minNum = prices[0];
        for(int i = 0;i<prices.size();i++){
            profit = max(prices[i]-minNum,profit);
            minNum = min(minNum,prices[i]);
        }
        return profit;
        
    }
};
相关推荐
安然无虞3 分钟前
31天Python入门——第17天:初识面向对象
后端·爬虫·python·职场和发展
程序员小远16 分钟前
Python+requests实现接口自动化测试框架
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
xyliiiiiL21 分钟前
二分算法到红蓝染色
java·数据结构·算法
珹洺2 小时前
C++从入门到实战(十)类和对象(最终部分)static成员,内部类,匿名对象与对象拷贝时的编译器优化详解
java·数据结构·c++·redis·后端·算法·链表
写bug的小屁孩2 小时前
移动零+复写零+快乐数+盛最多水的容器+有效三角形的个数
c++·算法·双指针
飞川撸码2 小时前
【LeetCode 热题100】208:实现 Trie (前缀树)(详细解析)(Go语言版)
算法·leetcode·golang·图搜索算法
这就是编程3 小时前
自回归模型的新浪潮?GPT-4o图像生成技术解析与未来展望
人工智能·算法·机器学习·数据挖掘·回归
羑悻的小杀马特3 小时前
【狂热算法篇】探寻图论幽径:Bellman - Ford 算法的浪漫征程(通俗易懂版)
c++·算法·图论·bellman_ford算法
Fantasydg6 小时前
DAY 31 leetcode 142--链表.环形链表
算法·leetcode·链表
basketball6166 小时前
C++ STL常用算法之常用排序算法
c++·算法·排序算法