MediumRating 1470
695. Max Area of Island
arraydepth-first-searchbreadth-first-searchunion-findmatrix
解題說明
C++ 解法
複雜度分析
虛擬碼
1. Define dfs(grid, r, c): a. If out of bounds or grid[r][c] == 0: return 0 b. Set grid[r][c] = 0 (mark visited) c. Return 1 + dfs(r+1,c) + dfs(r-1,c) + dfs(r,c+1) + dfs(r,c-1) 2. Initialize maxArea = 0 3. For each cell (r, c) in grid: a. If grid[r][c] == 1: maxArea = max(maxArea, dfs(grid, r, c)) 4. Return maxArea