Say you had an array for which the ith element was the price of a given stock on day I.
Design an algorithm to find the maximum profit. You could complete as many transactions as (ie, buy one and sell one share of the stock multiple times). However, engage in multiple transactions for the same time (ie, you must sell the stock before you buy again).
Hide Tags Array Greedy
This can be said to be a relatively simple case of stock trading.
Starting from a point in time, as long as the next day's price is greater than the price of the day, a deal. This way to find out all the spreads these days and is the biggest benefit.
See Hide tags hints that this is actually a greedy idea, because just the local optimal solution is the global optimal solution, so you can use greedy algorithm to solve problems.
Runtime:10ms
class solution {public : int maxprofit (< Span class= "hljs-built_in" >vector <int ; & prices) {int length=prices.size (); int result=0 ; if (Length<2 ) return result; for (int i=1 ; i<length;i++) {Result+=max (Prices[i]-prices[i-1 ],0 ); } return result; }};
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
Leetcode122:best time to Buy and Sell Stock II