【LeetCode】200. 岛屿的个数

题目

给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。
示例 1:输入:

11110
11010
11000
00000输出: 1

示例 2:输入:

11000
11000
00100
00011输出: 3

思路

DFS,深度遍历搜索
visited记录遍历过的陆地

代码

class Solution:def numIslands(self, grid: List[List[str]]) -> int:if len(grid) == 0:return 0#visited全部初始化为0row, col = len(grid), len(grid[0])visited = [[0 for x in range(0, col)] for y in range(0, row)]count=0for i in range(0,row):for j in range(0,col):if visited[i][j]==0 and grid[i][j]=='1':self.dfs(grid,i,j,visited)count += 1return countdef dfs(self, grid, i, j, visited):if i < 0 or i >= len(grid):returnif j < 0 or j >= len(grid[0]):returnif grid[i][j]=='0' or visited[i][j]==1:returnvisited[i][j] = 1 #遍历过的地方置为1#上下左右四个方向遍历self.dfs(grid, i-1, j, visited)self.dfs(grid, i+1, j, visited)self.dfs(grid, i, j-1, visited)self.dfs(grid, i, j+1, visited)

转载于:https://www.cnblogs.com/wemo/p/10547711.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/248349.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI 模拟退火算法

模拟退火算法转载于:https://www.cnblogs.com/yangwenhuan/p/10548171.html

keep用法

keep 是英语中用法灵活的动词之一&#xff0c;下面笔者就其用法归纳如下&#xff1a; 一、用作系动词&#xff0c;意为“保持&#xff08;某种状态&#xff09;”&#xff0c;其后常接形容词作表语。如&#xff1a; Please keep quiet / silent! 请保持安静&#xff01; Aft…

Kubernetes系列之Helm介绍篇

本次系列使用的所需部署包版本都使用的目前最新的或最新稳定版&#xff0c;安装包地址请到公众号内回复【K8s实战】获取 介绍 Helm 是 Deis 开发的一个用于 Kubernetes 应用的包管理工具&#xff0c;主要用来管理 Charts。有点类似于 Ubuntu 中的 APT 或 CentOS 中的 YUM。Helm…

HTNL笔记整合

简述概括了HTML 的部分内容&#xff0c;不是很完善&#xff0c;希望能给予你们相对的帮助。 一下文件的整合百度云链接&#xff1a;HTML整合笔记 第一章 HTML入门 课时1&#xff1a;HTML初识 1、英文名&#xff08;Hyper Text Markup Language&#xff09;超文本标签语言 对…

EXCEL 图表 只在拐点的时候显示数字

EXCEL图表只在折线的拐点显示数值&#xff0c;中间不需要显示。同时往下拐的&#xff0c;显示在上方&#xff0c;往上的显示在下方&#xff0c;这样数值不会挡住线。 首先&#xff0c;做一些模拟数据 因为起点和终点数值必须显示&#xff0c;所以单元格&#xff0c;C2 D2 C19 D…

浅谈Vue之双向绑定

VUE实现双向数据绑定的原理就是利用了 Object.defineProperty() 这个方法重新定义了对象获取属性值(get)和设置属性值(set)的操作来实现的。那么Object.defineProperty究竟是该如何使用的呢&#xff1f;先看个例子 <!DOCTYPE html> <html lang"en"><h…

【AtCoder】AGC017

A - Biscuits dp[i][0/1]表示当前和是偶数还是奇数&#xff0c;直接转移即可 #include <bits/stdc.h> #define fi first #define se second #define pii pair<int,int> #define mp make_pair #define pb push_back #define space putchar( ) #define enter putchar…

SQL语法(1、安装操作)

1、数据库的系统概述及安装与基本使用 bilibili可查找安装视频百度了解一下 – 使用超级管理员登录 CONN sys/change_on_install AS SYSDBA ; – 创建c##scott用户 CREATE USER c##scott IDENTIFIED BY tiger ; – 为用户授权 GRANT CONNECT,RESOURCE,UNLIMITED TABLESPACE…

java 中文字符和unicode编码值相互转化

java 中文字符和unicode编码值相互转化 https://blog.csdn.net/u011366045/article/details/79235217 版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主允许不得转载。 https://blog.csdn.net/u011366045/article/details/792352171、引用工具 import com.alibaba.…

Object 及toString() 方法的重写

Object: 是所有的类的父类 &#xff0c;Object中所有的方法 &#xff0c; 子类都能使用 &#xff0c; 接口不是Object子类。 Person: /*将父类的equals方法 重写* 不改变父类的源代码 equals 比较内存地址* 比较两个成员变量 变量值相等 返回true 不等 返回false* 重…

SQL语法练习

SQL语法练习https://blog.csdn.net/qq_30764991/article/details/81952197员工表建表语句: CREATE TABLE EMP ( ENAME VARCHAR2(30), EMPNO NUMBER(5), DEPTNO NUMBER(5), JOB VARCHAR2(20), HIREDATE DATE, COMM NUMBER(6,2), SAL NUMBER(6,2) ); 部门表建表语句: CREATE TA…

第22章:MongoDB-聚合操作--聚合管道--$out

①$out$out&#xff1a;利用此操作可以将查询结果输出到指定的集合里面。②范例&#xff1a;将投影的结果输出到集合里③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳转载于:https://www.cnblogs.com/Lucky-stars/p/10555296.html

SQL简单查询

1、简单查询 使用Oracle sql developer使用前&#xff0c;必须开启的服务&#xff1a; 查询emp表上的数据&#xff1a; select * from emp; Null为空&#xff0c;空不代表等于没有&#xff0c;null&#xff01;0. 重新连接后&#xff0c;注意大小写及空格位&#xff01; 简…

实用小技巧(一):UIScrollView中上下左右滚动方向的判断

https://www.jianshu.com/p/93e8459b6dae 2017.06.01 01:13* 字数 674 阅读 1201评论 0喜欢 12017.06.01 01:13* 字数 674 阅读 1201评论 0喜欢 1 版本记录 版本号 时间 V1.0 2017.05.31 前言 ios中又很多实用的小技巧&#xff0c;实现不难很实用&#xff0c;以后我会慢慢的…

less.js

1.变量 2.混入 3.带参的混入 4.选择器的继承&#xff0c;貌似还不支持 5.嵌套规则 6.运算 7.颜色函数 8.条件语句与控制&#xff0c;貌似不支持 9.命名空间 10.注释 11.作用域 12.字符的插入 13.转义 14.JavaScript 的赋值转载于:https://www.cnblogs.com/I-am-fine/archive/20…

SQL限定查询

1、限定查询与排序显示 1.1限定查询的认识&#xff1a; 列&#xff1a;表中有大数据的信息&#xff0c;对数据进行筛选&#xff0c;查询到自己想要的信息。 &#xff08;数据过多显示过慢&#xff0c;或者死机&#xff0c;在已有的样本数据库容器CDB转换为PDB之中&#xff09;…

Centos6.10源码部署zabbix-3.2.6

环境&#xff1a;Centos6.10 已有lnmp环境 mysql5.7 php7.2 创建zabbix数据库 mysql> create database zabbix character set utf8 collate utf8_bin; mysql> grant all privileges on zabbix.* to zabbixlocalhost identified by zabbix; 创建zabbix用户 shell> …

浅谈五大Python Web框架

http://www.csdn.net/article/2011-02-17/292058 导读&#xff1a;作者飞龙写了一篇《浅谈Python Web框架》&#xff0c;文中他介绍了几个Python Web框架和自己对选择框架的分析。在他看来&#xff0c;用Django来快速开发一些Web运用是很不错的选择。以下是文章内容&#xff1a…

主流浏览器和内核及Web标准

目前网络市场的浏览器主流&#xff1a; 课时3&#xff1a;web标准 WEB标准 w3c 万维网联盟组织&#xff0c;制定web标准的机构。 网页主要由三部分组成&#xff1a; 结构&#xff08;Structure&#xff09;、 表现&#xff08;Presentation&#xff09; 行为&#xff08;Beh…

质量属性六个常见属性场景(《淘宝网》为例) 15

六个最常见的系统质量属性分别是&#xff1a;可用性&#xff08;Availability&#xff09;、可修改性&#xff08;Modifiability&#xff09;、性能&#xff08;Performance&#xff09;、安全性&#xff08;Security&#xff09;、可测试性&#xff08;Testability&#xff09…