亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專(zhuān)欄INFORMATION COLUMN

【刷算法】LeetCode.150-買(mǎi)賣(mài)股票的最佳時(shí)機(jī) II

Vultr / 2913人閱讀

摘要:題目描述給定一個(gè)數(shù)組,它的第個(gè)元素是一支給定股票第天的價(jià)格。設(shè)計(jì)一個(gè)算法來(lái)計(jì)算你所能獲取的最大利潤(rùn)。你可以盡可能地完成更多的交易多次買(mǎi)賣(mài)一支股票。隨后,在第天股票價(jià)格的時(shí)候買(mǎi)入,在第天股票價(jià)格的時(shí)候賣(mài)出這筆交易所能獲得利潤(rùn)。

題目描述

給定一個(gè)數(shù)組,它的第 i 個(gè)元素是一支給定股票第 i 天的價(jià)格。

設(shè)計(jì)一個(gè)算法來(lái)計(jì)算你所能獲取的最大利潤(rùn)。你可以盡可能地完成更多的交易(多次買(mǎi)賣(mài)一支股票)。

注意:你不能同時(shí)參與多筆交易(你必須在再次購(gòu)買(mǎi)前出售掉之前的股票)。

示例 1:

輸入: [7,1,5,3,6,4]
輸出: 7
解釋: 在第 2 天(股票價(jià)格 = 1)的時(shí)候買(mǎi)入,在第 3 天(股票價(jià)格 = 5)的時(shí)候賣(mài)出, 這筆交易所能獲得利潤(rùn) = 5-1 = 4 。
     隨后,在第 4 天(股票價(jià)格 = 3)的時(shí)候買(mǎi)入,在第 5 天(股票價(jià)格 = 6)的時(shí)候賣(mài)出, 這筆交易所能獲得利潤(rùn) = 6-3 = 3 。

示例 2:

輸入: [1,2,3,4,5]
輸出: 4
解釋: 在第 1 天(股票價(jià)格 = 1)的時(shí)候買(mǎi)入,在第 5 天 (股票價(jià)格 = 5)的時(shí)候賣(mài)出, 這筆交易所能獲得利潤(rùn) = 5-1 = 4 。
     注意你不能在第 1 天和第 2 天接連購(gòu)買(mǎi)股票,之后再將它們賣(mài)出。
     因?yàn)檫@樣屬于同時(shí)參與了多筆交易,你必須在再次購(gòu)買(mǎi)前出售掉之前的股票。

示例 3:

輸入: [7,6,4,3,1]
輸出: 0
解釋: 在這種情況下, 沒(méi)有交易完成, 所以最大利潤(rùn)為 0。
代碼實(shí)現(xiàn)
/**
 * @param {number[]} prices
 * @return {number}
 */
var maxProfit = function(prices) {
    if(prices === null || prices.length === 0 || prices.length === 1)
        return 0;

    let index = 0;
    let res = 0;    

    for(let i = 0;i < prices.length-1;i++) {
        if(prices[i+1] <= prices[i]) {
            res += (prices[i] - prices[index]);
            index = i+1;
        }
    }
    
    if(index !== prices.length-1 && prices[prices.length-1] > prices[index])
        res += prices[prices.length-1] - prices[index];
    return res;
};

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/97415.html

相關(guān)文章

  • LeetCode】貪心算法--買(mǎi)賣(mài)股票最佳時(shí)機(jī) II(122)

    摘要:貪心算法每一步必須滿(mǎn)足一下條件可行的即它必須滿(mǎn)足問(wèn)題的約束。四題目分析貪心算法,總是做出在當(dāng)前看來(lái)是最好的選擇,不從整體最優(yōu)上加以考慮,也就是說(shuō),只關(guān)心當(dāng)前最優(yōu)解,按照貪心策略,不關(guān)心以后,我們只關(guān)心當(dāng)前利益。 一、寫(xiě)在前面 為什么要在LeetCode刷題?大家都知道不管是校招還是社招算法題是必考題,而這一部分恰巧是大多數(shù)人的短板,所以刷題首先是為了提高自身的編程能力,能夠在算法面試中...

    xbynet 評(píng)論0 收藏0
  • 大廠(chǎng)算法面試之leetcode精講3.動(dòng)態(tài)規(guī)劃

    摘要:動(dòng)態(tài)規(guī)劃問(wèn)題一定會(huì)具備最優(yōu)子結(jié)構(gòu),才能通過(guò)子問(wèn)題的最值得到原問(wèn)題的最值。另外,雖然動(dòng)態(tài)規(guī)劃的核心思想就是窮舉求最值,但是問(wèn)題可以千變?nèi)f化,窮舉所有可行解其實(shí)并不是一件容易的事,只有列出正確的狀態(tài)轉(zhuǎn)移方程才能正確地窮舉。 大廠(chǎng)算法面試之leetcode精講3.動(dòng)態(tài)規(guī)劃視頻教程(高效學(xué)習(xí)):點(diǎn)擊學(xué)習(xí)目錄:1.開(kāi)篇介...

    番茄西紅柿 評(píng)論0 收藏2637
  • LeetCode 攻略 - 2019 年 7 月上半月匯總(55 題攻略)

    摘要:微信公眾號(hào)記錄截圖記錄截圖目前關(guān)于這塊算法與數(shù)據(jù)結(jié)構(gòu)的安排前。已攻略返回目錄目前已攻略篇文章。會(huì)根據(jù)題解以及留言?xún)?nèi)容,進(jìn)行補(bǔ)充,并添加上提供題解的小伙伴的昵稱(chēng)和地址。本許可協(xié)議授權(quán)之外的使用權(quán)限可以從處獲得。 Create by jsliang on 2019-07-15 11:54:45 Recently revised in 2019-07-15 15:25:25 一 目錄 不...

    warmcheng 評(píng)論0 收藏0
  • Best Time To Buy And Sell Stock 買(mǎi)賣(mài)股票最佳時(shí)機(jī)

    摘要:關(guān)鍵字,,算法,,動(dòng)態(tài)規(guī)劃,上關(guān)于主題的題目有四個(gè)這四個(gè)題目難度依次遞增。其中第四個(gè)問(wèn)題是尋求一個(gè)通解,在給定和最大買(mǎi)賣(mài)次數(shù)的情況下,求最大收益。首先大致的解題方向是動(dòng)態(tài)規(guī)劃,這個(gè)應(yīng)該不難想到。之后就是怎么找到狀態(tài),怎么列狀態(tài)轉(zhuǎn)移方程。 關(guān)鍵字:leetcode,Best Time To Buy And Sell Stock,算法,algorithm,動(dòng)態(tài)規(guī)劃,dynamic prog...

    elliott_hu 評(píng)論0 收藏0
  • 前端也需要好好精進(jìn)自己算法

    摘要:算法前端發(fā)展的再快,也不要忘記精進(jìn)自己的算法,算法是靈魂和核心。我會(huì)把我刷過(guò)的算法題總結(jié)歸類(lèi),不斷完善。 算法 前端發(fā)展的再快,也不要忘記精進(jìn)自己的算法,算法是靈魂和核心。我會(huì)把我刷過(guò)的算法題總結(jié)歸類(lèi),不斷完善。歡迎大家關(guān)注。 數(shù)組和堆棧 數(shù)組去重 旋轉(zhuǎn)數(shù)組 如何快速找出兩個(gè)數(shù)之和等于某一個(gè)值的兩個(gè)數(shù)? 快排 排序算法大總結(jié) 快速找到數(shù)組中的最大值 多維數(shù)組的展開(kāi) 二分查找 有效的括...

    hersion 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<