題目:給定 n 個非負整數 a
1,a2,...,a
n,每個數代表座標中的乙個點 (i, ai
) 。畫 n 條垂直線,使得垂直線 i 的兩個端點分別為 (i, ai
) 和 (i, 0)。找出其中的兩條線,使得它們與 x 軸共同構成的容器可以容納最多的水。
注意:你不能傾斜容器,n 至少是2。
解法1:暴力
class solution }}
return result;
}}
這種計算就是迴圈巢狀遍歷,得出最大的面積;這種在leetcode是超時的;
時間複雜度:o(n^2);
空間複雜度:o(1);
解法2:class solution {
public int maxarea(int height) {
int result = 0;
int left = 0;
int temp = 0;
int right = height.length-1;
while(leftresult ? temp : result;
if(height[left]這裡是從兩端向中間依次計算,因為計算面積取決於兩個點低的那乙個,所以把低的那乙個向中間移乙個位置,再計算。
時間複雜度:o(n);
空間複雜度:o(1);
每日程式設計(十一) leetcode刷題
題目 平衡二叉樹 題目描述 給定乙個二叉樹,判斷它是否是高度平衡的二叉樹。本題中,一棵高度平衡二叉樹定義為 乙個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過1。示例 1 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回true。分析 沒什麼可說的,雙遞迴,先...
Leetcode刷題筆記
1.兩數之和給定乙個整數陣列nums 和乙個目標值target,請你在該陣列中找出和為目標值的那兩個整數,並返回他們的陣列下標。ps 你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。思路 用target減去nums中的每乙個數,並設立乙個字典來記錄對應的下標 class...
LeetCode刷題筆記
實現strstr 給定乙個 haystack 字串和乙個 needle 字串,在 haystack 字串中找出 needle 字串出現的第乙個位置 從0開始 如果不存在,則返回 1。示例 1 輸入 haystack hello needle ll 輸出 2 示例 2 輸入 haystack aaaa...