【网格问题】leecode463. 岛屿的周长
题目:
给定一个 row x col 的二维网格地图 grid ,其中:grid[i][j] = 1 表示陆地, grid[i][j] = 0 表示水域。
网格中的格子 水平和垂直 方向相连(对角线方向不相连)。整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地的格子相连组成的岛屿)。
岛屿中没有“湖”(“湖” 指水域在岛屿内部且不和岛屿周围的水相连)。格子是边长为 1 的正方形。网格为长方形,且宽度和高度均不超过 100 。计算这个岛屿的周长。
思路:
如何将周长与DFS联系起来?参考题解:https://leetcode-cn.com/problems/number-of-islands/solution/dao-yu-lei-wen-ti-de-tong-yong-jie-fa-dfs-bian-li-/
解答:
class Solution:def islandPerimeter(self, grid: List[List[int]]) -> int:directions=[[-1,0],[1,0],[0,-1],[0,1]]m=len(grid)n=len(grid[0])def InArea(r,c):if 0<=r<m and 0<=c<n:return Truereturn False#返回(r,c)所在岛屿的周长def dfs(r,c):if not InArea(r,c):return 1#若当前格子为海洋if grid[r][c]==0:return 1#若当前格子为已遍历过的陆地if grid[r][c]==2:return 0grid[r][c]=2return sum([dfs(r+dr,c+dc) for dr,dc in directions]) for i in range(m):for j in range(n):if grid[i][j]==1:return dfs(i,j)
【网格问题】leecode463. 岛屿的周长相关推荐
- Leetcode刷题 463题:岛屿的周长(基于Java语言)
** Leetcode刷题 463题:岛屿的周长(基于Java语言) ** 一. 题目描述: 给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域. 网格中的格子水平和垂直方向相 ...
- 463. Island Perimeter 岛屿的周长
给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域. 网格中的格子水平和垂直方向相连(对角线方向不相连).整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地 ...
- [Swift]LeetCode463. 岛屿的周长 | Island Perimeter
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...
- 463. 岛屿的周长
给定一个 row x col 的二维网格地图 grid ,其中:grid[i][j] = 1 表示陆地, grid[i][j] = 0 表示水域. 网格中的格子 水平和垂直 方向相连(对角线方向不相连 ...
- leetcode 463. 岛屿的周长
给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域. 网格中的格子水平和垂直方向相连(对角线方向不相连).整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地 ...
- LeetCode(463)——岛屿的周长(JavaScript)
给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域. 网格中的格子水平和垂直方向相连(对角线方向不相连).整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地 ...
- 【LeetCode】岛屿(周长、数量、最大面积、封闭岛屿数)
文章目录 岛屿的周长★ 岛屿数量★★ 岛屿数量Ⅱ★★★ 岛屿的最大面积★★ 统计封闭岛屿的数目★★ 岛屿的周长★ LeetCode463. 岛屿的周长 [题目]给定一个 row x col 的二维网格 ...
- 岛屿周长c语言,岛屿的周长 --leetcode刷题,golang实现
给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域. 网格中的格子水平和垂直方向相连(对角线方向不相连).整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地 ...
- 岛屿数量JAVA_LeetCode刷题 463. Island Perimeter 岛屿的周长 Java
LeetCode刷题 463. Island Perimeter 岛屿的周长 Java LeetCode刷题 463. Island Perimeter 岛屿的周长 Java 题目介绍 链接:http ...
最新文章
- DOS内核学习 - DOS专用中断
- 与虫子尾交3d动画网站_PPT中最酷的效果 —— 3D模型全解
- Android中利用Jsoup让WebView清除Html标签并让图片适应大小并居中
- swing JTable 更新数据
- Vue.config.productionTip = false
- 最简单的docker教程:在docker里运行nginx服务器
- 工程师必备:C/C 单元测试万能插桩工具
- python文字竖排的2种实现方法
- 大数据学习——yarn集群启动
- java序列化方式性能比较
- 解决maven打包编译出现File encoding has not been set问题
- Javascript匿名类
- 奇门遁甲排盘方:定局
- freemarker模板中long类型问题
- vue实现v-chart绑定数据
- 关于修改ico图片位深度的方法
- Failed to push the item
- 10强出炉 | 香港科大-杰瑞集团 2022【人工智能】百万奖金国际创业大赛半决赛成功举办...
- IP routing not enabled 是没有开启routing功能 只要 执行 ip routing 就可以
- js 打开新页面(网址)