付費限定

前綴和應用: 尋找旅途中的海拔最高點_Leetcode #1732 精選75題解析

閱讀時間約 2 分鐘

題目敘述

假想一位自行車手正在公路旅行,旅行起始點從海拔為0的地方開始出發,給定每個紀錄點的高度位移向量陣列gain,請問整趟旅途中的海拔最高點是多少?


題目的原文敘述


測試範例

Example 1:

Input: gain = [-5,1,5,0,-7]
Output: 1
Explanation: The altitudes are [0,-5,-4,1,1,-6]. The highest is 1.
每個記錄點的高度分別為​[0,-5,-4,1,1,-6]
最高高度是1

Example 2:

Input: gain = [-4,-3,-2,-1,4,3,2]
Output: 0
Explanation: The altitudes are [0,-4,-7,-9,-10,-6,-3,-1]. The highest is 0.
每個記錄點的高度分別為[0,-4,-7,-9,-10,-6,-3,-1]
最高高度是0

演算法

題目的每個紀錄點的高度位移向量陣列gain,又說起始點的高度為0。

那麼,只要依序累加每個紀錄點的位移向量,就能得到每個紀錄點的海拔高度

每回合迭代的時候,動態更新當下記錄到的高度,並且維護整趟旅途的海拔高度最大值


程式碼

class Solution:
def largestAltitude(self, gain: List[int]) -> int:

# altitude of current point
cur = 0

# global record of highest altitude
highest = 0

for offset in gain:

# compute altitude for current point
cur += offset

# update global highest altitude
highest = max(highest, cur)

return highest

複雜度分析

時間複雜度:O(n)

從頭到尾掃描過每個陣列元素,所需時間為O(n)。

空間複雜度:O(1)

所使用到的都是固定尺寸的臨時變數,所佔用的記憶體空間為O(1)。


Reference:

[1] Python O(n) by linear scan [w/ Visualization]

Support the creator with action! Pay to unlock
本篇內容共 1088 字、2 則留言,僅發佈於Leetcode精選75題 解析+統整You currently cannot view the following content, possibly because you are not logged in or do not have permission to view the room.
82會員
417Content count
由有業界實戰經驗的演算法工程師, 手把手教你建立解題的框架, 一步步寫出高效、清晰易懂的解題答案。 著重在讓讀者啟發思考、理解演算法,熟悉常見的演算法模板。 深入淺出地介紹題目背後所使用的演算法意義,融會貫通演算法與資料結構的應用。 在幾個經典的題目融入一道題目的多種解法,或者同一招解不同的題目,擴展廣度,並加深印象。
留言0
查看全部
發表第一個留言支持創作者!
題目敘述 題目會給定一個二元陣列nums(也就是說,陣列元素只有0,1這兩種情況)。 我們必須從裡面選擇一個元素刪除之後,請問連續為1的最長子陣列的長度是多少? 測試範例 Example 1: Input: nums = [1,1,0,1] Output: 3 Explanation:
題目敘述 題目會給定一個二元陣列nums(也就是說,陣列元素只有0,1這兩種情況)和指定的k值。 我們最多可以把k個0反轉成1,請問連續唯一的最長子陣列的長度是多少? 題目的原文敘述 測試範例 Example 1: Input: nums = [1,1,1,0,0,0,1,1,1,1,
題目敘述 題目會給定一個字串s,和指定長度k,問我們包含母音的子字串中,母音數量的最大值是多少? 題目的原文敘述 測試範例 Example 1: Input: s = "abciiidef", k = 3 Output: 3 Explanation: The substring "iii
題目敘述 題目會給定一個有n個整數的陣列nums和指定的k值,問我們長度為k的子陣列的平均值的最大值是多少? 題目的原文敘述 測試範例 Example 1: Input: nums = [1,12,-5,-6,50,3], k = 4 Output: 12.75000 Explanati
題目敘述 題目會給定我們一個整數陣列nums,我們每回合可以挑選總和為K的兩個數字,形成一個K-Sum pair。 請問我們最多可以製造幾個K-Sum pair? 題目的原文敘述 測試範例 Example 1: Input: nums = [1,2,3,4], k = 5 Output
題目敘述 題目會給定我們一個整數陣列nums,要求我們把裡面的0做元素交換,把0都搬到陣列的右邊。題目要求必須in-place在原本的陣列裡面做操作,不可以額外建立新的陣列。 題目的原文敘述 測試範例 Example 1: Input: nums = [0,1,0,3,12] Outpu
題目敘述 題目會給定一個二元陣列nums(也就是說,陣列元素只有0,1這兩種情況)。 我們必須從裡面選擇一個元素刪除之後,請問連續為1的最長子陣列的長度是多少? 測試範例 Example 1: Input: nums = [1,1,0,1] Output: 3 Explanation:
題目敘述 題目會給定一個二元陣列nums(也就是說,陣列元素只有0,1這兩種情況)和指定的k值。 我們最多可以把k個0反轉成1,請問連續唯一的最長子陣列的長度是多少? 題目的原文敘述 測試範例 Example 1: Input: nums = [1,1,1,0,0,0,1,1,1,1,
題目敘述 題目會給定一個字串s,和指定長度k,問我們包含母音的子字串中,母音數量的最大值是多少? 題目的原文敘述 測試範例 Example 1: Input: s = "abciiidef", k = 3 Output: 3 Explanation: The substring "iii
題目敘述 題目會給定一個有n個整數的陣列nums和指定的k值,問我們長度為k的子陣列的平均值的最大值是多少? 題目的原文敘述 測試範例 Example 1: Input: nums = [1,12,-5,-6,50,3], k = 4 Output: 12.75000 Explanati
題目敘述 題目會給定我們一個整數陣列nums,我們每回合可以挑選總和為K的兩個數字,形成一個K-Sum pair。 請問我們最多可以製造幾個K-Sum pair? 題目的原文敘述 測試範例 Example 1: Input: nums = [1,2,3,4], k = 5 Output
題目敘述 題目會給定我們一個整數陣列nums,要求我們把裡面的0做元素交換,把0都搬到陣列的右邊。題目要求必須in-place在原本的陣列裡面做操作,不可以額外建立新的陣列。 題目的原文敘述 測試範例 Example 1: Input: nums = [0,1,0,3,12] Outpu
你可能也想看
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
看文章教學之前,可以先下載檔案來試著自己做看看哦!!! 檔案下載 有網友提問,如何將所有的平日加班與假日加班時數合計到K欄,假日加班為了註明星期幾加班,前面分別會加上六、日當作前贅詞。 只不過是加總而已,讓我直接SUM看看好了!!! 答案好像怪怪的,怎麼只有平日的數據加總而已
☆ 小弟畢業前跑去荷蘭交換一學期、因而愛上了荷蘭,嚷著要帶我們去走走看看。趁著最小的妹妹畢業之際,我們四個加上大弟的女友,半年前買好來回機票和預定住宿、以立定成團決心。隨後大家又沒入生活的忙碌中,戀愛、工作、家庭、興趣、學習.....各種重心的轉移,沒辦法單腳站立,於是時間就這樣推進、退盡,退到了
Thumbnail
這部電影的主角,就是肚臍君夢想能成為的那種.. 才華洋溢、無法取代,彷彿活在世界的中心點的人。 啊..但是 站上事業高峰、能讓大家尊稱一聲「大師」。如果用職場女強人這個標籤去形容她恐怕還落於俗套..
Step0: 有API跟合約地址 前集提要:基礎智能合約 https://app.gitbook.com/o/2Og60fxjxr8ujOJl0Uns/s/bTPJaVnpufRAdMCNcQDH/asc-ji-chu-zhi-neng-he-yao-v1 Step1:創辦Github帳號 Gith
Thumbnail
官方編輯IDE:(請收藏) remix Step1安裝 Metamask 並搞到測試用ETH幣 裝完之後開啟測試模式 設定→ 進階 → Show test networks 將節點切到 Goerli網路(因為原先的 Rinkeby 代幣難拿) 獲取開發用的測試 ETH: https://goerli
Thumbnail
〈機器的脈動〉是Netflix原創科幻動畫影集《愛 x 死 x 機器人》其中一集短片,故事改編自美國科幻小說家Michael Swanwick獲得雨果獎的同名短篇小說。主角是名太空人,在探索木衛一艾歐時遭遇事故,她孤身一人,在如夢的幻境中,和艾歐進行關於生命的辯證。
Thumbnail
〈雨中的貓〉、〈一則很短的故事〉,以及〈一個乾淨明亮的地方〉。這三篇故事皆帶有海明威的溫柔慨嘆,某種氤氳氣氛,接近費茲傑羅,但沒有他的蓬勃虛華 ── 海明威總是實心的,行文如打靶,力透紙背的子彈,最終射穿作家的肉身。
Thumbnail
紀錄片《墜:波音大調查》是對2018、2019年波音公司生產新型飛機接連的空難事件做出調查,從過往離職員工的口吻到受難者家屬和公司管理、飛航專家的討論和華爾街股價,來說明為何波音公司從一個美國人的安全指標跌下神壇變成讓榮光不在的美國軼夢。
Thumbnail
前言 這是一個使用年報資料來做選股,並且隨時可以進場的投資策略,最重要的理論基礎是相信會有均值回歸的情況。就理論上來說,假如投入的資金夠多(三百萬以上應該就足夠了),理想情況下應該是把符合選股標準的股票都買進,但可惜的是一般人很顯然不會有這樣多的資金。所以還是要把投資標的在進一步縮小才行。
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
看文章教學之前,可以先下載檔案來試著自己做看看哦!!! 檔案下載 有網友提問,如何將所有的平日加班與假日加班時數合計到K欄,假日加班為了註明星期幾加班,前面分別會加上六、日當作前贅詞。 只不過是加總而已,讓我直接SUM看看好了!!! 答案好像怪怪的,怎麼只有平日的數據加總而已
☆ 小弟畢業前跑去荷蘭交換一學期、因而愛上了荷蘭,嚷著要帶我們去走走看看。趁著最小的妹妹畢業之際,我們四個加上大弟的女友,半年前買好來回機票和預定住宿、以立定成團決心。隨後大家又沒入生活的忙碌中,戀愛、工作、家庭、興趣、學習.....各種重心的轉移,沒辦法單腳站立,於是時間就這樣推進、退盡,退到了
Thumbnail
這部電影的主角,就是肚臍君夢想能成為的那種.. 才華洋溢、無法取代,彷彿活在世界的中心點的人。 啊..但是 站上事業高峰、能讓大家尊稱一聲「大師」。如果用職場女強人這個標籤去形容她恐怕還落於俗套..
Step0: 有API跟合約地址 前集提要:基礎智能合約 https://app.gitbook.com/o/2Og60fxjxr8ujOJl0Uns/s/bTPJaVnpufRAdMCNcQDH/asc-ji-chu-zhi-neng-he-yao-v1 Step1:創辦Github帳號 Gith
Thumbnail
官方編輯IDE:(請收藏) remix Step1安裝 Metamask 並搞到測試用ETH幣 裝完之後開啟測試模式 設定→ 進階 → Show test networks 將節點切到 Goerli網路(因為原先的 Rinkeby 代幣難拿) 獲取開發用的測試 ETH: https://goerli
Thumbnail
〈機器的脈動〉是Netflix原創科幻動畫影集《愛 x 死 x 機器人》其中一集短片,故事改編自美國科幻小說家Michael Swanwick獲得雨果獎的同名短篇小說。主角是名太空人,在探索木衛一艾歐時遭遇事故,她孤身一人,在如夢的幻境中,和艾歐進行關於生命的辯證。
Thumbnail
〈雨中的貓〉、〈一則很短的故事〉,以及〈一個乾淨明亮的地方〉。這三篇故事皆帶有海明威的溫柔慨嘆,某種氤氳氣氛,接近費茲傑羅,但沒有他的蓬勃虛華 ── 海明威總是實心的,行文如打靶,力透紙背的子彈,最終射穿作家的肉身。
Thumbnail
紀錄片《墜:波音大調查》是對2018、2019年波音公司生產新型飛機接連的空難事件做出調查,從過往離職員工的口吻到受難者家屬和公司管理、飛航專家的討論和華爾街股價,來說明為何波音公司從一個美國人的安全指標跌下神壇變成讓榮光不在的美國軼夢。
Thumbnail
前言 這是一個使用年報資料來做選股,並且隨時可以進場的投資策略,最重要的理論基礎是相信會有均值回歸的情況。就理論上來說,假如投入的資金夠多(三百萬以上應該就足夠了),理想情況下應該是把符合選股標準的股票都買進,但可惜的是一般人很顯然不會有這樣多的資金。所以還是要把投資標的在進一步縮小才行。