【LintCode】 Best Time to Buy and Sell Stock 买卖股票的最佳时机
2015-07-15 23:11
561 查看
假设有一个数组,它的第i个元素是一支给定的股票在第i天的价格。如果你最多只允许完成一次交易(例如,一次买卖股票),设计一个算法来找出最大利润。
样例
给出一个数组样例 [3,2,3,1,2], 返回 1
样例
给出一个数组样例 [3,2,3,1,2], 返回 1
public class Solution { /** * @param prices: Given an integer array * @return: Maximum profit */ public int maxProfit(int[] prices) { if(prices == null || prices.length == 0) return 0; int minPrice = prices[0]; int maxProfit = 0; for(int i = 1; i < prices.length; i++) { maxProfit = Math.max(maxProfit, prices[i] - minPrice); minPrice = Math.min(minPrice, prices[i]); } return maxProfit; } }
相关文章推荐
- 如何使用Python3.4连接MySQL
- 大圣归来观后感
- java学习笔记(一)OutputStreams
- global和$GLOBALS区别
- struts (三)
- HttpServletRequest对象(一)
- PHP利用P3P实现跨域
- C语言--程序设计基础--6章
- Spark应用如何访问带Kerberos认证的CDH Hadoop集群
- C++获取当前系统时间
- 15-07-08 数组-- 去掉最低分去掉最高分取平均分
- jni 简单实践 eclipse支持c++11
- Android Day01-Android按钮点击事件的4种写法
- 进程与线程之间的区别和联系
- hdu 3443(水题,公式)Shift Number
- Java HttpClient使用
- RequireJS学习资料汇总
- Django 模板中引用静态资源(js,css等)
- 页面上动态编译及执行java代码
- 用P3P header解决iframe跨域访问cookie