121. Best Time to Buy and Sell Stock
来源:互联网 发布:java同步异步调用 编辑:程序博客网 时间:2024/06/08 15:18
题目描述:
Say you have an array for which the ith element is the price of a given stock on day i.
If you were only permitted to complete at most one transaction (ie, buy one and sell one share of the stock), design an algorithm to find the maximum profit.
Example 1:
Input: [7, 1, 5, 3, 6, 4]Output: 5max. difference = 6-1 = 5 (not 7-1 = 6, as selling price needs to be larger than buying price)
Example 2:
Input: [7, 6, 4, 3, 1]Output: 0In this case, no transaction is done, i.e. max profit = 0.
解题思路:本题要求的是最大的差价,我们用minPrice来记录最低的价格,用profit来记录最大的差价,即每天价格与最低价之间的差的最大值。
代码:
class Solution {public: int maxProfit(vector<int>& prices) { int profit = 0; int minPrice = INT_MAX; for (int i = 0; i < prices.size(); i++) { minPrice = min(minPrice, prices[i]); profit = max(profit, prices[i] - minPrice); } return profit; }};
0 0
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time To Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- Best Time to Buy and Sell Stock
- windows管理命令
- Hbase性能问题以及解决方案
- Apatch Tomcat8.0 的配置遇到问题全面总结
- 欢迎使用CSDN-markdown编辑器
- nmon使用方法
- 121. Best Time to Buy and Sell Stock
- linux $ PATH=~/bin:$PATH这个命令是什么意思?
- 大数据系列-scala流程控制
- IOC和AOP简单理解
- Intellij IDEA修改代码补全快捷键
- 使用Solr索引MySQL数据
- 一个简单的Linux Shell
- 【编程素质】算法-二分搜索
- 架构学习-----架构概览(一)