力扣hot100 岛屿数量 dfs 图论

Problem: 200. 岛屿数量
在这里插入图片描述

文章目录

思路

复杂度

时间复杂度: O ( n ) O(n) O(n)

空间复杂度: O ( 1 ) O(1) O(1)

Code

class Solution {
	int n, m;

	public int numIslands(char[][] grid)
	{
		n = grid.length;
		if (n == 0)
			return 0;
		m = grid[0].length;
		int ans = 0;
		for (int i = 0; i < n; i++)
			for (int j = 0; j < m; j++)
				if (grid[i][j] == '1')
				{
					dfs(grid, i, j);
					ans++;
				}
		return ans;
	}

	private void dfs(char[][] g, int x, int y)
	{
		if (x < 0 || x >= n || y < 0 || y >= m || g[x][y] == '0')
			return;
		g[x][y] = '0';
		int[] dx = { 0, 1, 0, -1 };
		int[] dy = { 1, 0, -1, 0 };
		for (int i = 0; i < 4; i++)
			dfs(g, x + dx[i], y + dy[i]);
	}
}

相关推荐

  1. hot100-/岛屿问题

    2024-01-27 17:50:01       40 阅读
  2. [ Hot100]Day51 岛屿数量

    2024-01-27 17:50:01       40 阅读
  3. 【LeetCode热题100】【岛屿数量

    2024-01-27 17:50:01       30 阅读
  4. leetcode-hot100-

    2024-01-27 17:50:01       44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-27 17:50:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-27 17:50:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-27 17:50:01       82 阅读
  4. Python语言-面向对象

    2024-01-27 17:50:01       91 阅读

热门阅读

  1. 呼吸机电机控制主控MCU方案

    2024-01-27 17:50:01       55 阅读
  2. 策略模式实现rocketmq的消息处理器解耦

    2024-01-27 17:50:01       43 阅读
  3. QT容器分类与QSet应用

    2024-01-27 17:50:01       46 阅读
  4. 使用Gin框架,快速开发高效的Go Web应用程序

    2024-01-27 17:50:01       54 阅读
  5. Springboot整合hibernate validator 全局异常处理

    2024-01-27 17:50:01       44 阅读
  6. 开发手札:Github Timeout 22

    2024-01-27 17:50:01       47 阅读