149-买卖股票的最佳时机

假设有一个数组,它的第i个元素是一支给定的股票在第i天的价格。如果你最多只允许完成一次交易(例如,一次买卖股票),设计一个算法来找出最大利润。

样例

给出一个数组样例 [3,2,3,1,2], 返回 1

标签

枚举法 数组 贪心 优步 脸书

思路

一遍遍历数组,找到买入点 buyIn 与 i 的差值,决定是否买入以及利润值

code

class Solution {
public:
/**
* @param prices: Given an integer array
* @return: Maximum profit
*/
int maxProfit(vector<int> &prices) {
// write your code here
int size = prices.size();
if(size <= 0) {
return 0;
} int max = 0;
int buyIn = 0;
for(int i=0; i<size; i++) {
if(prices[i] < prices[buyIn]) {
buyIn = i;
}
else {
if(max < prices[i]-prices[buyIn]) {
max = prices[i]-prices[buyIn];
}
}
}
return max;
}
};

最新文章

  1. 为什么Pojo类没有注解也没有spring中配置&lt;bean&gt;也能够被加载到容器中。
  2. cocos2d之列表容器节点再排序
  3. 为什么for in循环不适合用于数组
  4. zoj 2027 Travelling Fee
  5. Android 导出db并查看内容
  6. Steps
  7. 类 的继承性(Inherits)与 重写(Overrides)
  8. 完全合并C++面试题
  9. rabbitmq安装Management Plugin
  10. 关于div+css排版布局中需注意的细节问题
  11. PTA題目的處理(二)
  12. DES的几种填补方式
  13. Java引入的一些新特性
  14. 搭建持续集成接口测试平台(jenkins+ant+jmeter)
  15. C++类中一个构造函数调用另一个构造函数
  16. [hgoi#2019/2/18]比较水
  17. Mac配置Eclipse CDT的Debug出现的问题(转)
  18. C 枚举 相同的值
  19. C++调Python示例(转载)
  20. android中activity向service中传值

热门文章

  1. 微信网页授权,错误40163,ios正确,安卓错误?
  2. 用树莓派3B+和 ITEAD PN532 读取、破解、写入M1卡
  3. Android 串口蓝牙通信开发Java版本
  4. python remove跟pop的区别
  5. #include stdio.h(A)
  6. HyperLedger Fabric 1.4 问题汇总(16)
  7. Android开发——Context类的各种细节问题
  8. 优步UBER司机全国各地奖励政策汇总 (2月8日-2月14日)
  9. 北京Uber优步司机奖励政策(1月25日)
  10. 武汉Uber优步司机奖励政策(12月21日-12.27日)