leetcode 463. 岛屿的周长
给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域。
网格中的格子水平和垂直方向相连(对角线方向不相连)。整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地的格子相连组成的岛屿)。
岛屿中没有“湖”(“湖” 指水域在岛屿内部且不和岛屿周围的水相连)。格子是边长为 1 的正方形。网格为长方形,且宽度和高度均不超过 100 。计算这个岛屿的周长。
示例 :
输入:
[[0,1,0,0],
[1,1,1,0],
[0,1,0,0],
[1,1,0,0]]
输出: 16
解释: 它的周长是下面图片中的 16 个黄色的边:
代码
class Solution {public int islandPerimeter(int[][] grid) {int res=0;int[][] dir=new int[][]{{0,1},{1,0},{-1,0},{0,-1}};for(int i=0;i<grid.length;i++)for(int j=0;j<grid[0].length;j++){if(grid[i][j]==1)//遍历所有岛屿res+=getLandPerimeter(grid,j,i,dir);//检查岛屿的四周} return res;}public int getLandPerimeter(int[][] grid,int x,int y,int[][] dir) {//检查四周int cnt=0;for(int[] c:dir){int nextX=x+c[0],nextY=y+c[1];if(nextX<0||nextX>=grid[0].length||nextY<0||nextY>=grid.length||grid[nextY][nextX]!=1)//位于边界或者周围的是0cnt++;}return cnt;}
}
leetcode 463. 岛屿的周长相关推荐
- Leetcode.463 岛屿的周长
题目链接 Leetcode.463 岛屿的周长 easy 题目描述 给定一个 row x col的二维网格地图 grid,其中:grid[i][j] = 1表示陆地, grid[i][j] = 0表示 ...
- leetcode 463. 岛屿的周长(Java版)
题目 https://leetcode-cn.com/problems/island-perimeter/ 题解 思路 需要三次遍历 首先,总边数=陆地个数*4 然后,横向遍历棋盘,纵向遍历棋盘,如果 ...
- 【LeetCode】463. 岛屿的周长
题目链接:https://leetcode-cn.com/problems/island-perimeter/ 题目描述 给定一个 row x col 的二维网格地图 grid ,其中: ...
- 463. 岛屿的周长
给定一个 row x col 的二维网格地图 grid ,其中:grid[i][j] = 1 表示陆地, grid[i][j] = 0 表示水域. 网格中的格子 水平和垂直 方向相连(对角线方向不相连 ...
- 【LeetCode】岛屿(周长、数量、最大面积、封闭岛屿数)
文章目录 岛屿的周长★ 岛屿数量★★ 岛屿数量Ⅱ★★★ 岛屿的最大面积★★ 统计封闭岛屿的数目★★ 岛屿的周长★ LeetCode463. 岛屿的周长 [题目]给定一个 row x col 的二维网格 ...
- 岛屿数量JAVA_LeetCode刷题 463. Island Perimeter 岛屿的周长 Java
LeetCode刷题 463. Island Perimeter 岛屿的周长 Java LeetCode刷题 463. Island Perimeter 岛屿的周长 Java 题目介绍 链接:http ...
- 岛屿问题 通用解-463.岛屿周长-200.岛屿数量-695.岛屿的最大面积-827.最大人工岛
文章目录 岛屿问题 如何在网格上做DFS(通用解) 463.岛屿的周长 题目 题解 -通用模板 题解2 200.岛屿数量 题目 题解 695.岛屿的最大面积 题目 题解 827.最大人工岛 题目 题解 ...
- 【leetcode】岛屿类问题的通用解法
在 LeetCode 中,「岛屿问题」是一个系列系列问题,比如 200. 岛屿数量 (Easy) 463. 岛屿的周长 (Easy) 695. 岛屿的最大面积 (Medium) 827. 最大人工岛 ...
- Leetcode刷题 463题:岛屿的周长(基于Java语言)
** Leetcode刷题 463题:岛屿的周长(基于Java语言) ** 一. 题目描述: 给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域. 网格中的格子水平和垂直方向相 ...
最新文章
- Zabbix监控系统部署:配置详解
- C#基础|面向对象之多态
- 单调栈解木板倒水问题
- 小说搜索站快速搭建:2.内容页解析
- 笨办法学 Python · 续 练习 15:栈和队列
- Android学习笔记--Menu菜单的使用
- JSON Perl
- oracle11g 卸载步骤
- 内存占用_一文教你节省 90% 的内存占用
- HG255D刷flash记录
- 如何关闭计算机软件更新功能,如何关闭电脑自动更新功能
- Linux编程经典实例,PyQt4 精彩实例分析 - 实例1 Hello Kitty! _Linux编程_Linux公社-Linux系统门户网站...
- 协方差与相关系数介绍
- 阿里巴巴投资1亿美元在成都建立西部基地,成都的人才快点抓紧啊
- AliOS Things 编译体系
- 二次函数图像如何用计算机绘制,如何快速画二次函数图像
- idea重装后打不开,点起来没反应(难受)
- 用于光波导耦合的倾斜光栅分析
- 小萌库一周电影大合集
- Parameters: { “silent“ } might not be used. This may not be accurate due to some parameters are