岛屿周长,C++
在leetcode看了笨猪的题解,感觉很不错。
思路大致为定义land 和 border。
可以发现岛屿面积就是land *4+border *2,自己动手画画就知道了。
接下来我认为的关键就是如何计算border
当遇到了land时,检查它的右边和下边,看是否有land,
有的话border++。
遍历完二维数组返回周长
class Solution { public: int islandPerimeter(vectorint>>& grid) { int land=0; int border=0; for(int i=0;i ) { for(int j=0;j 0].size();j++) { if(grid[i][j] == 1) { land++; if(i 1 && grid[i+1][j]==1)\\注意边界 { border++; } if(j 0].size()-1 && grid[i][j+1]==1)\\边界 { border++; } } } } return land * 4 - border *2; } };