刷題筆記之力扣 盛最多水的容器

2021-10-02 18:41:17 字數 772 閱讀 7689

為了紀念自己做過的題目,所以在csdn上開乙個部落格來記錄。

力扣上這道題目的難度是中等,和csp考試中的第一題難度差不多(csp中有一年的第一題就是和他差不多的)

此題有兩種做法。

1.暴力法

直接寫兩個迴圈,通過比較每乙個矩形的面積,從而找到最大的那個矩形的面積。

#include

using namespace std;

#include

#include

intmaxarea

(int

* height,

int heightsize)

}return maxarea;

}int

main()

;int maxx=

maxarea

(height,9)

; cout<}

2.雙指標法

我把這個方法叫做快速排序法,因為這個方法其實和快速排序法的思想是一樣的,但是要比快排簡單(哈哈哈,不用進行過多的排序)只要判斷出height[low]和height[high]哪乙個更小即可,所以會更加簡單操作。

int

maxarea

(int

* height,

int heightsize)

//快速排序法

else

}return maxarea;

}

LeedCode刷題筆記 盛水最多的容器

給你 n 個非負整數 a1,a2,an,每個數代表座標中的乙個點 i,ai 在座標內畫 n 條垂直線,垂直線 i 的兩個端點分別為 i,ai 和 i,0 找出其中的兩條線,使得它們與 x 軸共同構成的容器可以容納最多的水。說明 你不能傾斜容器。示例 1 外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存...

c lesetcode 刷題 盛最多水的容器

一.暴力解法 二.雙指標解法 最優解 11.盛最多水的容器 難度中等1679 給你 n 個非負整數 a1,a2,an,每個數代表座標中的乙個點 i,ai 在座標內畫 n 條垂直線,垂直線 i 的兩個端點分別為 i,ai 和 i,0 找出其中的兩條線,使得它們與 x 軸共同構成的容器可以容納最多的水。...

Leetcode刷題 11 盛最多水的容器

示例解題思路 給定 n 個非負整數 a1,a2,an,每個數代表座標中的乙個點 i,ai 在座標內畫 n 條垂直線,垂直線 i 的兩個端點分別為 i,ai 和 i,0 找出其中的兩條線,使得它們與 x 軸共同構成的容器可以容納最多的水。說明 你不能傾斜容器,且 n 的值至少為 2。輸入 1,8,6,...