leetcode.com/problems/be… Brute Force 暴力解法 双循环对比两个差值的最大值
单循环
- 假设已经找到了最小值(Number.MAX_VALUE)和最大盈利值
- 如果循环的过程中出现了比最小值小的值,直接替换最小值
minPrice = prices[i] - 如果没有出现最小值,用当前值减去最小值如果比最大盈利值大就提换,
maxProfit = prices[i] - minPrice
/**
* @param {number[]} prices
* @return {number}
*/
const maxProfit = function (prices) {
let maxProfit = 0
let minPrice = Number.MAX_VALUE
for (let i = 0; i < prices.length; i++) {
if (prices[i] < minPrice) {
minPrice = prices[i]
} else if(prices[i] - minPrice > maxProfit) {
maxProfit = prices[i] - minPrice
}
}
return maxProfit
};