首页 > 其他分享 >LeetCode热题100|买卖股票的最佳时机(贪心)

LeetCode热题100|买卖股票的最佳时机(贪心)

时间:2024-10-19 16:18:27浏览次数:9  
标签:遍历 int max max1 LeetCode prices min1 100 热题

简述题意省流版:在一个序列里找到max(a[i]-a[k])且i>k。

解题思路:

    遍历这个序列,i表示当前遍历到了第i个元素,min1表示1到i这个范围内最小的元素,max1表示1到i这个范围内最大的【max(a[i]-a[k])】。max1=max(max1,第i个元素的值-min1)

代码如下:

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

标签:遍历,int,max,max1,LeetCode,prices,min1,100,热题
From: https://blog.csdn.net/m0_73366752/article/details/143080114

相关文章

  • LeetCode 707 - 设计链表
    题目描述你可以选择使用单链表或者双链表,设计并实现自己的链表。单链表中的节点应该具备两个属性:val 和 next 。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果是双向链表,则还需要属性 prev 以指示链表中的上一个节点。假设链表中的所有节点下标从 0 ......
  • P1004 [NOIP2000 提高组] 方格取数
    要走两次因此,考虑一个四维的数组来实现,然后如果i=k&&j==l的话记得减一次即得到答案。点击查看代码#include<iostream>#include<stack>#include<cmath>#include<algorithm>#include<set>#include<vector>#include<climits>#include<string.h&g......
  • Leetcode 1129. 颜色交替的最短路径
    1.题目基本信息1.1.题目描述给定一个整数n,即有向图中的节点数,其中节点标记为0到n–1。图中的每条边为红色或者蓝色,并且可能存在自环或平行边。给定两个数组redEdges和blueEdges,其中:redEdges[i]=[a_i,b_i]表示图中存在一条从节点a_i到节点b_i的红色有向边,bl......
  • Leetcode 1135. 最低成本连通所有城市
    1.题目基本信息1.1.题目描述想象一下你是个城市基建规划者,地图上有n座城市,它们按以1到n的次序编号。给你整数n和一个数组conections,其中connections[i]=[x_i,y_i,cost_i]表示将城市x_i和城市y_i连接所要的cost_i(连接是双向的)。返回连接所有城市的最低成本,......
  • 【leetcode】 码住—两种办法解决力扣数学思想 “加一” 操作
     前言......
  • LeetCode题练习与总结:最大单词长度乘积--318
    一、题目描述给你一个字符串数组 words ,找出并返回 length(words[i])*length(words[j]) 的最大值,并且这两个单词不含有公共字母。如果不存在这样的两个单词,返回 0 。示例 1:输入:words=["abcw","baz","foo","bar","xtfn","abcdef"]输出:16解释:这两个单词为"abc......
  • LeetCode题练习与总结:灯泡开关--319
    一、题目描述初始时有 n 个灯泡处于关闭状态。第一轮,你将会打开所有灯泡。接下来的第二轮,你将会每两个灯泡关闭第二个。第三轮,你每三个灯泡就切换第三个灯泡的开关(即,打开变关闭,关闭变打开)。第 i 轮,你每 i 个灯泡就切换第 i 个灯泡的开关。直到第 n 轮,你只需要切换......
  • 红米ac2100从openwrt刷回官方系统的教程
    第一步、关闭杀毒软件和防火墙关闭系统自带的Windows安全中心。关闭防火墙:Win+R,输入control回车。打开控制面板,关闭网络防火墙。第二步、更新官方BootLoader这是最重要的一步,如果是刷过openwrt系统的路由器少了这一步,官方修复工具会一直检测不到第二次上线。进入breed,在Boo......
  • LeetCode刷题日记之贪心算法(二)
    目录前言买卖股票的最佳时机II跳跃游戏跳跃游戏II总结前言在上一篇贪心算法的学习中,我们探讨了贪心算法的基本思路和逻辑框架。在这篇文章中,我将继续分享几道经典的LeetCode贪心算法题,并探讨其背后的解题思路和技巧。希望通过这些题目的实践,能加深我对贪心算法的理......
  • 挑战1000道javascript手写题之实现Promise.all(9)
    Promise.all介绍Promise.all方法接收一个数组作为参数,这个参数数组的元素也都是promise实例,该方法返回一个promise示例。constp=Promise.all([p1,p2,p3]);p的状态由p1、p2、p3决定,p最后的状态要么是变成fulfilled,要么变成rejected。变成fulfilled:只有当p1、p2、p3......