ベスト・タイム📈 楽な
3424 ワード
この問題は、毎日の価格のリストを与えられた最高の利益を見つけることを求めます.私たちは整数の配列を備えていて、配列の時間の間、可能な限り最高の買物組合せを見つけなければなりません.
このアルゴリズムの主なテクニックは、組み合わせの利益を比較し、最高のものを維持する
また、我々は利益
お気軽に手を差し伸べる!
このアルゴリズムの主なテクニックは、組み合わせの利益を比較し、最高のものを維持する
Math.max
メソッドを使用することです.const maxProfit = (prices) => {
if (prices.length === 0){
return 0
}
let current = 0
let max = 0
for(let i = 0; i<prices.length; i++){
for(let j = i+1; j<prices.length; j++){
// O(n^2) nested loop
// inner loop on i+1 to always compare to next elements
if(prices[j] - prices[i] > 0){
current = prices[j] - prices[i]
}
max = Math.max(current, max)
// compare profits save higher
}
}
return max
};
我々は、将来の日の価格を現在の価格に比較できるように、i+1
で始まる入れ子になったループを使用します.また、我々は利益
current
(利益があるので、違いが正であるときだけ)とmax
とMath.max
の方法で、2つの最高を保つために2つの変数を使用します.お気軽に手を差し伸べる!
Reference
この問題について(ベスト・タイム📈 楽な), 我々は、より多くの情報をここで見つけました https://dev.to/santispavajeau/best-time-to-buy-and-sell-easy-47biテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol