博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
算法-DFS-岛屿的数量
阅读量:3965 次
发布时间:2019-05-24

本文共 835 字,大约阅读时间需要 2 分钟。

在这里插入图片描述

此题的思路在于每一次DFS操作完后都是对岛屿的一次遍历,所以只需要统计dfs的次数就行了

class Solution {
public int numIslands(char[][] grid) {
int ans = 0; for(int r = 0; r < grid.length; r++) {
for(int c = 0; c < grid[0].length; c++) {
if(grid[r][c] == '1') {
ans++; dfs(grid, r, c); } } } return ans; } public void dfs(char[][] grid, int r, int c) {
if(!(0 <= r && r < grid.length && 0 <= c && c < grid[0].length)) {
return; } if(grid[r][c] == '0') {
return; } if(grid[r][c] == '2') {
return; } grid[r][c] = '2'; dfs(grid, r + 1, c); dfs(grid, r - 1, c); dfs(grid, r, c + 1); dfs(grid, r, c - 1); }}

转载地址:http://flhzi.baihongyu.com/

你可能感兴趣的文章
第七颗头骨 & 忘魂花 凤凰
查看>>
李小龙哲学之言
查看>>
[心情] 如果有一天
查看>>
[Linux] 常用 linux 系统命令及维护备忘
查看>>
[Linux] 关于 Ext4 HowTo
查看>>
[杂记] 新年物语&关于Mysql引擎性能测试
查看>>
[心得] 近期更新&关于Infobright
查看>>
[杂记] 流量统计 & 短信接口
查看>>
[中间件] 消息处理利器 ActiveMQ 的介绍 & Stomp 协议的使用
查看>>
[设计] 原型界面设计利器 Balsamiq Mockups 推荐
查看>>
[闲话] 在西方的程序员眼里,东方的程序员是什么样的
查看>>
[管理] 成功之路的探寻 —— “三力” 理论
查看>>
[连载] Socket 深度探索 4 PHP (一)
查看>>
[无线] Android 系统开发学习杂记
查看>>
[无线] 浅析当代 LBS 技术
查看>>
[杂感] 缅怀乔布斯
查看>>
[无线] 让Android支持cmwap上网
查看>>
[无线] AndroidManifest.xml配置文件详解
查看>>
[移动] Mosquitto简要教程(安装/使用/测试)
查看>>
[HTML5] 关于HTML5(WebGL)的那点事
查看>>