695. 岛屿的最大面积

题目链接:https://leetcode-cn.com/problems/max-area-of-island/

执行用时:68 ms, 在所有 Swift 提交中击败了100.00% 的用户
内存消耗:14.8 MB, 在所有 Swift 提交中击败了36.00% 的用户

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
class Solution {
func maxAreaOfIsland(_ grid: [[Int]]) -> Int {
var grid = grid
var row = grid.count
var column = grid[0].count
var ans = 0
func dfs( _ i: Int, _ j: Int) -> Int {
//越界判断
if i < 0 || j < 0 || i >= row || j >= column {
return 0
}
if grid[i][j] == 0 {
return 0
}
//找到1就置为0,沉没岛屿
grid[i][j] = 0
var num = 1
//四个方向深搜
num += dfs(i-1, j)
num += dfs(i+1, j)
num += dfs(i, j-1)
num += dfs(i, j+1)
return num
}
for i in 0 ..< row {
for j in 0 ..< column {
ans = max(ans, dfs(i,j))
}
}
return ans
}
}

695. 岛屿的最大面积
https://pisces34.github.io/2021/08/26/leetcode/695/
发布于
2021年8月26日
许可协议