博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LeetCode]Best Time to Buy and Sell Stock II
阅读量:5021 次
发布时间:2019-06-12

本文共 1164 字,大约阅读时间需要 3 分钟。

题目描述:

Say you have an array for which the ith element is the price of a given stock on day i.

Design an algorithm to find the maximum profit. You may complete as many transactions as you like (ie, buy one and sell one share of the stock multiple times). However, you may not engage in multiple transactions at the same time (ie, you must sell the stock before you buy again).

 

解题思路:

贪心算法:只要当前值比前一个值小,就更新利润。

1 class Solution { 2 public: 3     int maxProfit(vector
& prices) { 4 if (prices.size() == 0 || prices.size() == 1) { 5 return 0; 6 } 7 8 int min_index = 0; 9 int profit = 0;10 11 for (int i = 1; i < prices.size(); ++i) {12 if (prices[i] < prices[i - 1]) {13 profit += prices[i - 1] - prices[min_index] > 0? prices[i - 1] - prices[min_index] : 0;14 min_index = i;15 }16 }17 if (prices[min_index] < prices[prices.size() - 1]) {18 profit += prices[prices.size() - 1] - prices[min_index];19 }20 21 return profit;22 }23 };

 

转载于:https://www.cnblogs.com/skycore/p/5361256.html

你可能感兴趣的文章
02号团队-团队任务3:每日立会(2018-11-29)
查看>>
visual c++如何显示行号
查看>>
maven
查看>>
微信打开页面,下载东西时调用其他浏览器下载
查看>>
Get方法提交URL的最大长度限制
查看>>
python之八大排序方法
查看>>
【原】Docker学习_Dockerfile框架学习(3)
查看>>
Django Cookie 和 Sessions 应用
查看>>
基于SmartQQ协议的QQ自动回复机器人-1
查看>>
结队作业1
查看>>
06.数组
查看>>
在存储过程中用事务
查看>>
一个将当前目录下HEX文件的第一行数据删除的程序
查看>>
centos6.5_64bit安装Redis3.2.8
查看>>
用表组织数据
查看>>
数据库基础之左连接
查看>>
0042-海伦公式
查看>>
hdoj1789【贪心】
查看>>
ZOJ3526【缩点思想】
查看>>
P5111 zhtobu3232的线段树
查看>>