Sekcja DSAŁatwe

Prim

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

Oświadczenie o problemie

Łatwe

Napisz funkcję prim_mst(graph), która pobiera nieskierowany, spójny, ważony graf reprezentowany jako lista sąsiedztwa słowników (gdzie graph[u][v] jest wagą krawędzi (u, v)) i zwraca sumę wag Minimalnego Drzewa Rozpinającego (MST) przy użyciu algorytmu Prima.

Ograniczenia
  • 1 <= V <= 500
  • 0 <= E <= 1000

Przykłady

Example 1
Input
graph = {0: {1: 2, 3: 6}, 1: {0: 2, 2: 3, 3: 8, 4: 5}, 2: {1: 3, 4: 7}, 3: {0: 6, 1: 8, 4: 9}, 4: {1: 5, 2: 7, 3: 9}}
Output
16
Explanation

MST edges selected are: (0,1) wt 2, (1,2) wt 3, (1,4) wt 5, (0,3) wt 6. Total weight = 16.

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.