LeetCode: Best Time to Buy and Sell Stock
Question
You are given an array prices where prices[i] is the price of a given stock on the ith day.
You want to maximize your profit by choosing a single day to buy one stock and choosing a different day in the future to sell that stock.
Return the maximum profit you can achieve from this transaction. If you cannot achieve any profit, return 0.
Solution
def max_profit(prices)
min_price = prices.first
max_profit = 0
prices.each do |current_price|
if current_price < min_price
min_price = current_price
else
max_profit = [current_price - min_price, max_profit].max
end
end
return max_profit
end
Comments