日拱一卒,月进一步(7)

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

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

为了使买股票利润最大化,应该在下标[0,i-1]选择最小值作为price[j]。遍历所有可能卖出股票的日期,即可得到最大利润。计算最大利润的具体做法是:将最大利润初始化为0,从左到右遍历数组,遍历过程中维护下标范围的最小值,当遍历到下标i,执行如下操作:


(1)使用prices[i]-prevMin更新最大利润


(2)将prevMin的值更新为prices[i]。

遍历结束后即可获得最大值。

// 定义一个变量maximumProfit来存储最大利润,初始化为0


// 定义一个变量prevMin来存储到当前位置为止的最低价格,初始化为prices数组的第一个元素

int maxProfit(int* prices, int pricesSize) 
{
    int maximumProfit=0,prevMin=prices[0];
    for(int i=1;i<pricesSize;i++)
    {
        maximumProfit=fmax(maximumProfit,prices[i]-prevMin);
        prevMin=fmin(prevMin,prices[i]);
    }
    return maximumProfit;
}
相关文章
|
缓存 Linux 开发工具
CentOS 7- 配置阿里镜像源
阿里镜像官方地址http://mirrors.aliyun.
19435 0
CentOS 7- 配置阿里镜像源
|
传感器 监控 IDE
基于单片机的温度监控系统设计
基于单片机的温度监控系统设计
|
监控 Go
Golang 语言 beego v2 之路由设置
Golang 语言 beego v2 之路由设置
477 0
|
C#
如何使用c# 实现断点续传功能
如何使用c# 实现断点续传功能
271 0
|
存储 监控 关系型数据库
MySQL8 中文参考(二十八)(4)
MySQL8 中文参考(二十八)
335 1
|
Java API 开发工具
Spring Boot与Spring Cloud Config的集成
Spring Boot与Spring Cloud Config的集成
|
搜索推荐 JavaScript Java
基于SpringBoot+Vue+uniapp的个性化新闻推荐系统的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的个性化新闻推荐系统的详细设计和实现(源码+lw+部署文档+讲解等)
221 1
|
存储 算法 Java
(四)JVM成神路之深入理解虚拟机运行时数据区与内存溢出、内存泄露剖析
前面的文章中重点是对于JVM的子系统进行分析,在之前已经详细的阐述了虚拟机的类加载子系统以及执行引擎子系统,而本篇则准备对于JVM运行时的内存区域以及JVM运行时的内存溢出与内存泄露问题进行全面剖析。
427 0
|
存储 数据处理 索引
大文本的全文检索方案附件索引
大文本的全文检索方案附件索引
280 0
|
自然语言处理
Elasticsearch+IK+pinyin自定义分词器
Elasticsearch+IK+pinyin自定义分词器
271 0