描述

给一个 01 矩阵,求不同的岛屿的个数。

0 代表海,1 代表岛,如果两个 1 相邻,那么这两个 1 属于同一个岛。我们只考虑上下左右为相邻。

样例

- 样例 1:输入:
[[1,1,0,0,0],[0,1,0,0,1],[0,0,0,1,1],[0,0,0,0,0],[0,0,0,0,1]
]
输出:3- 样例 2:输入:
[[1,1]
]
输出:1

解析

const numIslands = grid => {if(!grid || grid.length === 0){return 0;}let len = grid.length;let size = grid[0].length;let island = 0;// 方向向量let dx = [-1,1,0,0];let dy = [0,0,-1,1];// dfs 推平function sink(i,j){// terminatorif(grid[i][j] == '0'){return 0;}// processgrid[i][j] = '0';// drill downfor(var k = 0;k< dx.length;k++){var x = i + dx[k];var y = j + dy[k];if(x >= 0 && x < grid.length && y >=0 && y<grid[i].length){if(grid[x][y] == '1'){sink(x,y)}}}return 1;}for(var i = 0;i<len;i++){for(var r = 0;r<grid[i].length;r++){if(grid[i][r] == 1){island += sink(i,r);}}}return island;
}

运行结果

LintCode 433. 岛屿的个数 JavaScript算法相关推荐

  1. LintCode 434. 岛屿的个数II(并查集)

    文章目录 1. 题目 2. 解题 1. 题目 给定 n, m, 分别代表一个二维矩阵的行数和列数, 并给定一个大小为 k 的二元数组A. 初始二维矩阵全0. 二元数组A内的k个元素代表k次操作, 设第 ...

  2. LintCode 1228. 可怜的猪 JavaScript算法

    描述 有1000个桶,有且仅有一个桶里面装了毒药,其他的都装了水.这些桶从外面看上去完全相同.如果一只猪喝了毒药,它将在15分钟内死去.在一个小时内,至少需要多少只猪才能判断出哪一个桶里装的是毒药呢? ...

  3. lintcode:Number of Islands 岛屿的个数

    题目: 岛屿的个数 给一个01矩阵,求不同的岛屿的个数. 0代表海,1代表岛,如果两个1相邻,那么这两个1属于同一个岛.我们只考虑上下左右为相邻. 样例 在矩阵: [[1, 1, 0, 0, 0],[ ...

  4. LintCode 岛屿的个数

    题目: 给一个01矩阵,求不同的岛屿的个数. 0代表海,1代表岛,如果两个1相邻,那么这两个1属于同一个岛.我们只考虑上下左右为相邻. 样例 在矩阵: [[1, 1, 0, 0, 0],[0, 1, ...

  5. JavaScript算法与数据结构——字典详解

    字典是一种以键-值对的形式存储数据的数据结构,接下来我们将使用JavaScript实现字典数据结构. 1.定义字典类 由于比较字典数据结构比较简单,就直接上代码好了. class Dictionary ...

  6. JavaScript算法相关

    1. 排序 1.1.冒泡排序 每一轮比较,从左至右交换相邻,每轮结束,最后一个为最大 下一轮,需要比较的个数 - 1 j < len - i (范围动态缩小) 共 len - 1 轮比较 fun ...

  7. 九章算法面试题81 岛屿的个数

    原文网址: www.jiuzhang.com 问题详情 给一个01矩阵,求不同的岛屿的个数. 0代表海,1代表岛,如果两个1相邻,那么这两个1属于同一个岛.我们只考虑上下左右为相邻. 在线评测本题: ...

  8. 岛屿的个数java_LeetCode 200:岛屿数量 Number of Islands

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

  9. 岛屿的个数number-of-islands

    给一个01矩阵,求不同的岛屿的个数. 0代表海,1代表岛,如果两个1相邻,那么这两个1属于同一个岛.我们只考虑上下左右为相邻. 样例 在矩阵: [[1, 1, 0, 0, 0],[0, 1, 0, 0 ...

最新文章

  1. 白话经典算法系列之七 堆与堆排序
  2. 拥抱开源,Office 365开发迎来新时代
  3. 简单的正则表达式过滤网址
  4. 2020年高等数学方法与提高(上海理工大学)学习笔记:向量代数与空间解析几何
  5. GMIS 2017大会漆远演讲:AI 驱动金融生活
  6. 王建然之欲望和理想的对话
  7. 区块链行业级应用服务商识数信科获千万元天使轮融资...
  8. 计算机网络基础:局域网协议相关知识
  9. python真是最烂的语言_在大型项目上,Python 是个烂语言吗?
  10. python审计运用_用Python来分析审计行业的这10年
  11. vmtools 安装不上的方法 我这里介绍下vm14 Ubuntu的系统
  12. 3DMAX零基础图文教程学习
  13. 每日单词20110605
  14. Ant实现自动打包部署
  15. 微信小程序:经典语录大全微信小程序源码
  16. NO.35——qq音乐全站分布式爬虫(一)
  17. 阿里巴巴高级技术专家 至简 聊工程师思维(配音版)
  18. 2022年海南最新消防设施操作员模拟试题题库及答案
  19. python调用系统软键盘_python库 pywinio虚拟键盘使用
  20. IP-guard 双机热备使用说明

热门文章

  1. Spring、 Spring MVC、 Spring Boot的关系
  2. 常用计算机信息的交换标准编码是,信息交换用汉字编码字符集
  3. 持久化存储-MySql拓展
  4. 看美剧,学英语,背单词,赚美刀
  5. layui checkbox 反选/全选/取消单个取消全选/全部选中勾上全选
  6. 新年将至,如何用python给朋友送上新年祝福呢?
  7. dnf加物理攻击的卡片有哪些_dnf加物理攻击力的宝珠有哪些 dnf物攻宝珠
  8. 中国石油大学《社会学概论》第二次在线作业
  9. 什么是B/S开发技术?
  10. Python 字典类型转换json格式