463. Island Perimeter

题目链接

463. Island Perimeter

题目分析

给定一个二维数组,代表一个二维表格。
里面包含01两种数字。

1代表有内容,0代表没有。

计算有内容的格子的周长。

思路

最简单的办法是,判断当前格子是否位1,且上下左右是否为0。

当任意一个方向有0时,那个方向计算有一个边长。

当都为0时,即当前位置是单独的一个格子,算上下左右共4条边。

最终代码

<?php
class Solution {function islandPerimeter($grid) {$edges = 0;$width = count($grid[0]);$height = count($grid);foreach($grid as $y=>$row){foreach($row as $x=>$col){if($col==0){continue;}if(!isset($grid[$y][$x+1])||$grid[$y][$x+1]==0){$edges++;}if(!isset($grid[$y][$x-1])||$grid[$y][$x-1]==0){$edges++;}if(!isset($grid[$y+1][$x])||$grid[$y+1][$x]==0){$edges++;}if(!isset($grid[$y-1][$x])||$grid[$y-1][$x]==0){$edges++;}}}return $edges;}
}
复制代码

若觉得本文章对你有用,欢迎用爱发电资助。

D38 463. Island Perimeter相关推荐

  1. Leetcode PHP题解--D38 463. Island Perimeter

    2019独角兽企业重金招聘Python工程师标准>>> 463. Island Perimeter 题目链接 463. Island Perimeter 题目分析 给定一个二维数组, ...

  2. 岛屿数量JAVA_LeetCode刷题 463. Island Perimeter 岛屿的周长 Java

    LeetCode刷题 463. Island Perimeter 岛屿的周长 Java LeetCode刷题 463. Island Perimeter 岛屿的周长 Java 题目介绍 链接:http ...

  3. LeetCode 463. Island Perimeter

    题目: You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 repr ...

  4. 歪门邪道 Leetcode 463 Island Perimeter

    题目是求一个由多个边长为1的正方形连接而成的多边形的周长,一般来说,遍历整个数组,对值为1的陆地项做判断,周围有多少个水区域就加上多少边长,即对a[I][j]来说,判断a[i-1][j], a[i+1 ...

  5. 463. Island Perimeter 岛屿的周长

    给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域. 网格中的格子水平和垂直方向相连(对角线方向不相连).整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地 ...

  6. [Swift]LeetCode463. 岛屿的周长 | Island Perimeter

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  7. LeetCode之Island Perimeter

    1.题目 You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 rep ...

  8. C#LeetCode刷题之#463-岛屿的周长​​​​​​​(Island Perimeter)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3794 访问. 给定一个包含 0 和 1 的二维网格地图,其中 1 ...

  9. island of java_LeetCode算法题-Island Perimeter(Java实现)

    这是悦乐书的第238次更新,第251篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第105题(顺位题号是463).您将获得一个二维整数网格形式的地图,其中1代表土地,0代 ...

最新文章

  1. 【UAV】光流传感器代码分析
  2. linux软件包管理之rpm 、yum基本使用
  3. 2021-04-11面试
  4. 剑指offer-二叉搜索树的后序遍历序列
  5. 第八章 springboot + mybatis + 多数据源
  6. 户频繁点击发送ajax请求
  7. 解决swagger-ui加了Oauth2后无法访问的问题
  8. 如何迅速定位***路由器故障
  9. python小程序源代码_【程序源代码】Spring Boot 考试小程序
  10. OKR是什么、OKR有什么用?
  11. chrome 打印布局_在打印预览模式下使用Chrome的Element Inspector?
  12. 升级完ssh之后login incorrect怎么解决_魔兽世界怀旧服:伏击搜索流,盗贼另类升级刷钱方法简单攻略...
  13. linux分区分错了能改么,linux 分区错误怎么处理
  14. Spark DataFrames DataSet
  15. 专访Wunderlist主设计师Jan Martin:永远不要盲目跟风流行趋势1
  16. 磁盘分区助手一键迁移操作系统——易我分区大师
  17. NCIS调查表辅助工具-病案首页数据上传-病案数据统计
  18. 【Matlab水果识别】RGB+HSV水果成熟度分级系统【含GUI源码 825期】
  19. 渲染用计算机功耗,【IT之家评测室】满功耗 RTX 3060 笔记本 GPU 表现如何?拯救者 R9000P 实测...
  20. 【Mysql】Mysql为什么使用B+树

热门文章

  1. 医疗管理系统-检查项管理
  2. Chrome浏览器 设置跨域访问
  3. 2020年7月各大城市与程序员平均工资排行榜
  4. python selenium+Firefox 模拟浏览器操作
  5. Ios5(三)屏幕的旋转和大小设置;
  6. 网络层路由选择协议(RIPOSF)
  7. 用U盘打造专属个人的微型护航系统--winpe
  8. 链游新玩法:传奇4的感悟
  9. Python3 编程第一弹 斐波纳契数列
  10. 创客匠人知识付费系统为教培机构拓宽变现渠道