給定乙個包含了一些 0 和 1的非空二維陣列grid
, 乙個島嶼是由四個方向 (水平或垂直) 的1
(代表土地) 構成的組合。你可以假設二維矩陣的四個邊緣都被水包圍著。
找到給定的二維陣列中最大的島嶼面積。(如果沒有島嶼,則返回面積為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。
這道題用dfs和bfs做都可以。我用的是bfs。很簡單,就搜就行了。
class solution ;
int dy = ;
int m = grid.size();
int n = grid[0].size();
vector> visited(m, vector(n, false));
for(int i = 0; i < m; i++));
visited[i][j] = true;
while(!q.empty()));
visited[x][y] = true;}}
}ans = max(ans, res);}}
}return ans;
}};
LeetCode 695島嶼最大面積
給定乙個包含了一些 0 和 1 的非空二維陣列 grid 乙個 島嶼 是由一些相鄰的 1 代表土地 構成的組合,這裡的 相鄰 要求兩個 1 必須在水平或者豎直方向上相鄰。你可以假設 grid 的四個邊緣都被 0 代表水 包圍著。找到給定的二維陣列中最大的島嶼面積。如果沒有島嶼,則返回面積為 0 示例...
leetcode 695 島嶼的最大面積
給定乙個包含了一些 0 和 1的非空二維陣列grid,乙個 島嶼 是由四個方向 水平或垂直 的1 代表土地 構成的組合。你可以假設二維矩陣的四個邊緣都被水包圍著。找到給定的二維陣列中最大的島嶼面積。如果沒有島嶼,則返回面積為0。示例 1 0,0,1,0,0,0,0,1,0,0,0,0,0 0,0,0...
leetcode 695 島嶼的最大面積
給定乙個包含了一些 0 和 1的非空二維陣列 grid 乙個 島嶼 是由四個方向 水平或垂直 的 1 代表土地 構成的組合。你可以假設二維矩陣的四個邊緣都被水包圍著。找到給定的二維陣列中最大的島嶼面積。如果沒有島嶼,則返回面積為0。示例 1 0,0,1,0,0,0,0,1,0,0,0,0,0 0,0...