LeetCode刷題(中等程度) 554 磚牆

2021-10-11 11:10:27 字數 637 閱讀 9458

你的面前有一堵矩形的、由多行磚塊組成的磚牆。 這些磚塊高度相同但是寬度不同。你現在要畫一條自頂向下的、穿過最少磚塊的垂線。

磚牆由行的列表表示。 每一行都是乙個代表從左至右每塊磚的寬度的整數列表。

如果你畫的線只是從磚塊的邊緣經過,就不算穿過這塊磚。你需要找出怎樣畫才能使這條線穿過的磚塊數量最少,並且返回穿過的磚塊數量。

你不能沿著牆的兩個垂直邊緣之一畫線,這樣顯然是沒有穿過一塊磚的。

示例:輸入: [[1,2,2,1],

[3,1,2],

[1,3,2],

[2,4],

[3,1,2],

[1,3,1,1]]

輸出: 2

解釋:

思路:統計每一行出現的字首和,然後統計出現最多的那乙個字首和,比如圖中的這個例子中可以發現4,出現的此處最多,那麼我們劃的那條線就可以從4這裡畫下來,記住邊界是不需要統計進來的。

class solution 

}return wall.size() - max_times;}};

LeetCode刷題(中等程度) 2 兩數相加

給出兩個 非空 的鍊錶用來表示兩個非負的整數。其中,它們各自的位數是按照 逆序 的方式儲存的,並且它們的每個節點只能儲存 一位 數字。如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。您可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。示例 輸入 2 4 3 5 6 4 輸出 ...

LeetCode刷題(中等程度)31 下乙個排列

實現獲取 下乙個排列 的函式,演算法需要將給定數字序列重新排列成字典序中下乙個更大的排列。如果不存在下乙個更大的排列,則將數字重新排列成最小的排列 即公升序排列 必須 原地 修改,只允許使用額外常數空間。示例 1 輸入 nums 1,2,3 輸出 1,3,2 示例 2 輸入 nums 3,2,1 輸...

leetcode刷題記錄 17 中等

題目 給定乙個含有 n 個正整數的陣列和乙個正整數 s 找出該陣列中滿足其和 s 的長度最小的 連續 子陣列,並返回其長度。如果不存在符合條件的子陣列,返回 0。思路 從頭開始,找到第乙個和 s的子陣列,然後右指標往右移動1位,左指標移動到使得當前子陣列剛好 s的位置,更新當前的最小長度 時間複雜度...