題目描述:
給你乙個由 『1』(陸地)和 『0』(水)組成的的二維網格,請你計算網格中島嶼的數量。
島嶼總是被水包圍,並且每座島嶼只能由水平方向或豎直方向上相鄰的陸地連線形成。
此外,你可以假設該網格的四條邊均被水包圍。
示例 1:
輸入:[
[『1』,『1』,『1』,『1』,『0』],
[『1』,『1』,『0』,『1』,『0』],
[『1』,『1』,『0』,『0』,『0』],
[『0』,『0』,『0』,『0』,『0』]
]輸出: 1
示例 2:
輸入:[
[『1』,『1』,『0』,『0』,『0』],
[『1』,『1』,『0』,『0』,『0』],
[『0』,『0』,『1』,『0』,『0』],
[『0』,『0』,『0』,『1』,『1』]
]輸出: 3
解釋: 每座島嶼只能由水平和/或豎直方向上相鄰的陸地連線而成。
分析:即統計能連線起來的1的區域塊個數,使用dfs遍歷,同時標記即可
class
solution
public
intnumislands
(char
grid)}}
return cnt;
}}
題目描述:
給定乙個包含了一些 0 和 1 的非空二維陣列 grid 。
乙個 島嶼 是由一些相鄰的 1 (代表土地) 構成的組合,這裡的「相鄰」要求兩個 1 必須在水平或者豎直方向上相鄰。你可以假設 grid 的四個邊緣都被 0(代表水)包圍著。
找到給定的二維陣列中最大的島嶼面積。(如果沒有島嶼,則返回面積為 0 。)
示例 1:
[[0,0,1,0,0,0,0,1,0,0,0,0,0],
[0,0,0,0,0,0,0,1,1,1,0,0,0],
[0,1,1,0,1,0,0,0,0,0,0,0,0],
[0,1,0,0,1,1,0,0,1,0,1,0,0],
[0,1,0,0,1,1,0,0,1,1,1,0,0],
[0,0,0,0,0,0,0,0,0,0,1,0,0],
[0,0,0,0,0,0,0,1,1,1,0,0,0],
[0,0,0,0,0,0,0,1,1,0,0,0,0]]
對於上面這個給定矩陣應返回 6。注意答案不應該是 11 ,因為島嶼只能包含水平或垂直的四個方向的 1 。
示例 2:
[[0,0,0,0,0,0,0,0]]
對於上面這個給定的矩陣, 返回 0。
注意: 給定的矩陣grid 的長度和寬度都不超過 50。
分析:基於上題,加個變數統計每個區域1的個數
class
solution
public
intmaxareaofisland
(int
grid)}}
return ans;
}}
題目描述:
有乙個二維矩陣 grid ,每個位置要麼是陸地(記號為 0 )要麼是水域(記號為 1 )。
我們從一塊陸地出發,每次可以往上下左右 4 個方向相鄰區域走,能走到的所有陸地區域,我們將其稱為一座「島嶼」。
如果一座島嶼 完全 由水域包圍,即陸地邊緣上下左右所有相鄰區域都是水域,那麼我們將其稱為 「封閉島嶼」。
請返回封閉島嶼的數目。
示例 1:
輸入:grid = [[1,1,1,1,1,1,1,0],[1,0,0,0,0,1,1,0],[1,0,1,0,1,1,1,0],[1,0,0,0,0,1,0,1],[1,1,1,1,1,1,1,0]]
輸出:2
解釋:灰色區域的島嶼是封閉島嶼,因為這座島嶼完全被水域包圍(即被 1 區域包圍)。
示例 2:
輸入:grid = [[0,0,1,0,0],[0,1,0,1,0],[0,1,1,1,0]]
輸出:1
示例 3:
輸入:grid = [[1,1,1,1,1,1,1],
[1,0,0,0,0,0,1],
[1,0,1,1,1,0,1],
[1,0,1,0,1,0,1],
[1,0,1,1,1,0,1],
[1,0,0,0,0,0,1],
[1,1,1,1,1,1,1]]
輸出:2
分析:只要在邊界裡面的又是1的就會形成封閉島嶼,而當達到邊界之外時,證明邊界處時不是1 ,那麼肯定不會構成封閉島嶼。
class
solution
public
intclosedisland
(int
grid)
}return ans;
}}
島嶼問題(DFS)
題目 方格搜尋類題目均可使用dfs演算法 695.給定乙個包含了一些 0 和 1的非空二維陣列 grid 乙個 島嶼 是由四個方向 水平或垂直 的 1 代表土地 構成的組合。你可以假設二維矩陣的四個邊緣都被水包圍著。找到給定的二維陣列中最大的島嶼面積。如果沒有島嶼,則返回面積為0。示例 1 0,0,...
島嶼面積問題
網格沉島問題 給定乙個包含了一些 0 和 1 的非空二維陣列 grid 乙個 島嶼 是由一些相鄰的 1 代表土地 構成的組合,這裡的 相鄰 要求兩個 1 必須在水平或者豎直方向上相鄰。你可以假設 grid 的四個邊緣都被 0 代表水 包圍著。找到給定的二維陣列中最大的島嶼面積。如果沒有島嶼,則返回面...
2017 2 18 問題合集
入坑144天 因為flex的相容性問題,導致 臃腫,重新優化了樣式表,簡單的居中問題不再使用flex屬性。同時也學會了如何處理flex相容性的問題 a display moz box display webkit box display webkit flex 新版本語法 chrome 21 dis...