Best Time to Buy and Sell Stock

Easy

Topics
ArrayDynamic Programming

You are given an array prices where prices[i] is the price of a stock on day i. Maximize profit by choosing one day to buy and a later day to sell. Return the max profit, or 0 if none.

Example 1

Input:  prices = [7,1,5,3,6,4]
Output: 5
Explanation: Buy at 1, sell at 6.

Example 2

Input:  prices = [7,6,4,3,1]
Output: 0

Constraints

  • 1 <= prices.length <= 10^5
  • 0 <= prices[i] <= 10^4
Run ⌘' · Submit ⌘⏎