給你乙個由 '1'(陸地)和 '0'(水)組成的的二維網格,請你計算網格中島嶼的數量。
島嶼總是被水包圍,並且每座島嶼只能由水平方向和/或豎直方向上相鄰的陸地連線形成。
此外,你可以假設該網格的四條邊均被水包圍。
示例 1:
輸入:11110
11010
11000
00000
輸出: 1
我的解答(深度優先遍歷):
class solution
}if(j>0)
}if(i官方解答一:(深度優先)
class solution
grid[r][c] = '0';
dfs(grid, r - 1, c);
dfs(grid, r + 1, c);
dfs(grid, r, c - 1);
dfs(grid, r, c + 1);
}public int numislands(char grid)
int nr = grid.length;
int nc = grid[0].length;
int num_islands = 0;
for (int r = 0; r < nr; ++r) }}
return num_islands;
}}
官方解答二:(廣度優先)
class solution
int nr = grid.length;
int nc = grid[0].length;
int num_islands = 0;
for (int r = 0; r < nr; ++r)
if (row + 1 < nr && grid[row+1][col] == '1')
if (col - 1 >= 0 && grid[row][col-1] == '1')
if (col + 1 < nc && grid[row][col+1] == '1') }}
}}
return num_islands;
}}
每日一題 島嶼數量
給你乙個由 1 陸地 和 0 水 組成的的二維網格,請你計算網格中島嶼的數量。島嶼總是被水包圍,並且每座島嶼只能由水平方向和 或豎直方向上相鄰的陸地連線形成。此外,你可以假設該網格的四條邊均被水包圍。示例1 輸入 11110 11010 11000 00000 輸出 1 示例2 輸入 11000 1...
每日一題 島嶼數量
今天是2020年4月20日,星期一。給你乙個由 1 陸地 和 0 水 組成的的二維網格,請你計算網格中島嶼的數量。島嶼總是被水包圍,並且每座島嶼只能由水平方向和 或豎直方向上相鄰的陸地連線形成。此外,你可以假設該網格的四條邊均被水包圍。示例 1 輸入 11110 11010 11000 00000 ...
leetcode 第200題 島嶼數量
題目 給定乙個由 1 陸地 和 0 水 組成的的二維網格,計算島嶼的數量。乙個島被水包圍,並且它是通過水平方向或垂直方向上相鄰的陸地連線而成的。你可以假設網格的四個邊均被水包圍。示例 1 輸入 11110 11010 11000 00000 輸出 1 示例 2 輸入 11000 11000 0010...