Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- aws #cloudwatch #log insight
- Fall Challenge 2023
- LeetCode #
- 도메인 #도메인 주도 설계 #도메인 주도 설계 핵심 #DDD
- DDD #도메인 #도메인 주도 설계 #도메인 주도 설계 핵심
- base7
- 반 버논
- Find Pivot Index
- 코딩게임
- 도메인 주도 설계 핵심
- leetcode #알고리즘 #릿코드
- #20. Valid Parentheses java
- #move zeroes
- codingame #코딩게임 #codingame fall challenge2023 #코딩게임 2023 가을 챌린지
- leetcode #2206. Divide Array Into Equal Pairs
- Longest Substring WIthout Repeating Characters
- leetcode #20. Valid Parentheses #알고리즘 #leetcode Valid Parentheses
- codinGame
- 도메인 주도 설계 핵심 #DDD #도메인 주도 설계 #도메인
- DDD #도메인 #도메인 주도 설계 #도메인 주도 섥계 핵심
- ddd
- 867. Transpose Matrix #Transpose Matrix
- leetcode
Archives
- Today
- Total
주하니 서하아빠
200. Number of Islands 본문
Given an m x n 2D binary grid grid which represents a map of '1's (land) and '0's (water), return the number of islands.
An island is surrounded by water and is formed by connecting adjacent lands horizontally or vertically. You may assume all four edges of the grid are all surrounded by water.
Example 1:
Input: grid = [
["1","1","1","1","0"],
["1","1","0","1","0"],
["1","1","0","0","0"],
["0","0","0","0","0"]
]
Output: 1
Example 2:
Input: grid = [
["1","1","0","0","0"],
["1","1","0","0","0"],
["0","0","1","0","0"],
["0","0","0","1","1"]
]
Output: 3
Constraints:
- m == grid.length
- n == grid[i].length
- 1 <= m, n <= 300
- grid[i][j] is '0' or '1'.
[Java Source]
class Solution {
public int numIslands(char[][] 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') {
count += 1;
BFS( i, j, grid);
}
}
}
return count;
}
public void BFS( int i, int j, char[][] grid) {
if( i < 0 || i >= grid.length || j < 0 || j >= grid[i].length || grid[i][j] == '0') {
return;
}
grid[i][j] = '0';
// 1.left
BFS(i, j-1, grid);
// 2.right
BFS(i, j+1, grid);
// 3.up
BFS(i-1, j, grid);
// 4.down
BFS(i+1, j, grid);
}
}
'알고리즘 > LeetCode' 카테고리의 다른 글
217. Contains Duplicate (0) | 2022.05.20 |
---|---|
25. Reverse Nodes in k-Group (0) | 2022.05.20 |
61. Rotate List (0) | 2022.05.19 |
693. Binary Number with Alternating Bits (0) | 2021.04.20 |
283. Move Zeroes (0) | 2021.04.07 |