463. Island Perimeter

Java

public class Solution {
    public int islandPerimeter(int[][] grid) {
        int count=0;
        for(int i=0;i<grid.length;i++)
        {
            for(int j=0;j<grid[i].length;j++)
            {
                if(grid[i][j]==1)
                {
                int tmp=4;
                if(i>=1&&grid[i-1][j]==1)
                tmp--;
                if(i<grid.length-1&&grid[i+1][j]==1)
                tmp--;
                if(j>=1&&grid[i][j-1]==1)
                tmp--;
                if(j<grid[i].length-1&&grid[i][j+1]==1)
                tmp--;
                count+=tmp;
                }
            }
        }
        return count;
    }
}

Javascript

/**
 * @param {number[][]} grid
 * @return {number}
 */
var islandPerimeter = function(grid) {
    var count=0;
        for(var i=0;i<grid.length;i++)
        {
            for(var j=0;j<grid[i].length;j++)
            {
                if(grid[i][j]==1)
                {
                var tmp=4;
                if(i>=1&&grid[i-1][j]==1)
                tmp--;
                if(i<grid.length-1&&grid[i+1][j]==1)
                tmp--;
                if(j>=1&&grid[i][j-1]==1)
                tmp--;
                if(j<grid[i].length-1&&grid[i][j+1]==1)
                tmp--;
                count+=tmp;
                }
            }
        }
        return count;
};

优解,思路差不多,想法要好一点

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,990评论 25 709
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,493评论 18 399
  • 好快,又一个月要结束了,又到了CFO进行月度决算和下月预算的时间啦。马上迎来2016年第三季度的最后一个月,这个月...
    是也阅读 1,612评论 0 0
  • 01 最近这段时间,村上春树又成了热点。原因是他的两本新书。其中一本新小说《骑士团长杀人事件》(暂时还没有中文版)...
    杨摩阅读 4,731评论 0 3
  • 妈妈从小对我说,要做一个好人,尽管做好人大多数情况下并不会有回报,也不要我做一个为人所指的坏人,恶人。 ...
    七根阅读 1,396评论 0 1

友情链接更多精彩内容