150 najlepszych wywiadówŁatwe

Liczba wysp

Szczegółowy przewodnik i implementacja Python dla problemu „Liczba wysp”.

Oświadczenie o problemie

Łatwe

Biorąc pod uwagę binarną siatkę siatki 2D m x n, która reprezentuje mapę „1” (ziemia) i „0” (woda), zwróć liczbę wysp.

Wyspa otoczona jest wodą i powstaje poprzez połączenie sąsiadujących ze sobą lądów w poziomie lub w pionie. Możesz założyć, że wszystkie cztery krawędzie siatki są otoczone wodą.

Napisz funkcję numIslands(grid: List[List[str]]) -> int.

Ograniczenia
  • m == len(grid)
  • n == len(grid[i])
  • 1 <= m, n <= 300
  • grid[i][j] is '0' or '1'

Przykłady

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
Explanation

There is a single island consisting of all connected '1's starting from top-left.

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
Explanation

There are three distinct islands separated by '0's.

Need a Hint?
Rozważ użycie struktur danych specyficznych dla wykresów, takich jak zestawy lub sterty.
Edge Cases to Watch
  • Puste struktury wejściowe
  • Wejścia jednoelementowe
  • Duże granice liczbowe

Gotowy do rozwiązania?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Otwórz w Edytorze
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Polecane zasoby Pythona

Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.