領釦LintCode演算法問題答案-1225. 島的周長
領釦LintCode演算法問題答案-1225. 島的周長
1225. 島的周長
描述
給定一張用二維陣列表示的網格地圖,其中1表示陸地單元格,0表示水域單元格。網格地圖中的單元格視為水平/垂直相連(斜向不相連)。這個網格地圖四周完全被水域包圍著,並且其中有且僅有一個島(定義為一塊或多塊相連的陸地單元格)。這個島不包含湖(定義為不和外圍水域相連的水域單元格)。一個地圖單元格是邊長為1的一個正方形;網格地圖是一個矩形,並且它的長和寬不超過100。你要做的是求出這個島的周長。
樣例 1:
[[0,1,0,0],
[1,1,1,0],
[0,1,0,0],
[1,1,0,0]]
答案:16
說明:島的邊界為下圖中被標為黃色的邊,其周長即為16:
題解
public class Solution {
/**
* @param grid: a 2D array
* @return: the perimeter of the island
*/
public int islandPerimeter(int[][] grid) {
// Write your code here
if (grid == null) {
return 0;
}
int ret = 0;
for (int r = 0; r < grid.length; r++) {
for (int c = 0; c < grid[0].length; c++) {
if (grid[r][c] == 1) {
if (r == 0
|| grid[r - 1][c] == 0) {
ret++;
}
if (c == 0
|| grid[r][c - 1] == 0) {
ret++;
}
if (r + 1 == grid.length
|| grid[r + 1][c] == 0) {
ret++;
}
if (c + 1 == grid[0].length
|| grid[r][c + 1] == 0) {
ret++;
}
}
}
}
return ret;
}
}
鳴謝
非常感謝你願意花時間閱讀本文章,本人水平有限,如果有什麼說的不對的地方,請指正。
歡迎各位留言討論,希望小夥伴們都能每天進步一點點。
相關文章
- 領釦LintCode演算法問題答案-77. 最長公共子序列演算法
- 領釦LintCode演算法問題答案-1343. 兩字串和演算法字串
- 領釦LintCode演算法問題答案-1878. 旋轉數字演算法
- 領釦LintCode演算法問題答案-988. 硬幣擺放演算法
- 領釦LintCode演算法問題答案-1895. 安排面試城市演算法面試
- 領釦LintCode演算法問題答案-1886. 目標移動演算法
- 領釦LintCode演算法問題答案-1320. 包含重複值演算法
- 領釦LintCode演算法問題答案-1206. 下一個更大的數 I演算法
- 領釦LintCode演算法問題答案-1214. 許可證金鑰格式演算法
- 領釦LintCode演算法問題答案-1876. 外星人字典(簡單)演算法
- 領釦LintCode演算法問題答案-1354. 楊輝三角形II演算法
- Facebook 面試題 | 島的周長面試題
- Leedcode-島嶼的周長
- LeetCode 463. 島嶼的周長 JAVALeetCodeJava
- [LintCode]NumberofIslands(島嶼個數)
- lintcode演算法題 落單的數 JavaScript演算法JavaScript
- Troubleshooting 專題 - 問正確的問題 得到正確的答案
- 菜鳥扣程式碼第九天:leetcode463--島嶼的周長LeetCode
- 周受資,遇到超綱問題
- 阿里Jvm必問面試題及答案阿里JVM面試題
- SQL排名問題,100% leetcode答案大公開!SQLLeetCode
- PHPer、Laravel 面試可能會遇到的問題及答案PHPLaravel面試
- 馬踏棋盤演算法(騎士周遊問題)----遞迴與貪心優化演算法演算法遞迴優化
- 拋擲硬幣的領先問題
- LeetCode 周賽上分之旅 #45 精妙的 O(lgn) 掃描演算法與樹上 DP 問題LeetCode演算法
- 關於Linux一些問題和答案Linux
- 熱門 Splunk 管理面試問題及答案面試
- 前端必備,JavaScript面試問題及答案前端JavaScript面試
- 牛客題霸 [最長公共子串]C++題解/答案C++
- 程式設計演算法題來看看大家各種不同的答案程式設計演算法
- 最長有效括號的問題
- 最全前端開發面試問題及答案整理前端面試
- 大小廠必問Java後端面試題(含答案)Java後端面試題
- 遊戲設計終極問題的半個答案-賽季遊戲設計
- Java在演算法題中的輸入問題Java演算法
- 程式設計師大調查丨填問卷,領限量周邊程式設計師
- PLM對解決“資訊孤島”問題的意義和侷限性
- Lintcode515 Paint House solution 題解AI