Problem · Array
Best Time to Buy and Sell Stock
Learn this problemProblem statement
You are given an array prices, where prices[i] is the price of one share on day i.
You may choose one day to buy one share and a later day to sell that share. Return the maximum profit you can earn. If no profitable transaction exists, return 0.
Function
maxProfit(prices: int[]) → intExamples
Example 1
prices = [7,1,5,3,6,4]return = 5Buy at price 1 and sell later at price 6, for profit 6 - 1 = 5.
Example 2
prices = [7,6,4,3,1]return = 0Every later price is lower, so no profitable transaction exists.
Example 3
prices = [2,4,1]return = 2Buy on the first day at price 2 and sell on the second day at price 4.
Constraints
1 <= prices.length <= 2000000 <= prices[i] <= 1000000000- The returned profit fits in a signed 32-bit integer.