Verkko on yhtenäinen, jos minkä tahansa kahden solmun välillä on reitti. Tehtäväsi on tarkastaa, onko annettu verkko yhtenäinen.
Esimerkiksi seuraava verkko on yhtenäinen, koska jokaisen kahden solmun välillä on reitti.
Seuraava verkko puolestaan ei ole yhtenäinen, koska esimerkiksi solmujen 1 ja 4 välillä ei ole reittiä.
Toteuta tiedostoon connectivity.py
funktio connected
, jolle annetaan listat verkon solmuista ja kaarista. Funktion tulee palauttaa True
, jos verkko on yhtenäinen, ja muuten False
.
def connected(nodes, edges): # TODO if __name__ == "__main__": nodes = [1, 2, 3, 4, 5] edges = [(1, 2), (1, 3), (1, 4), (2, 4), (2, 5), (3, 4), (4, 5)] print(connected(nodes, edges)) # True nodes = [1, 2, 3, 4, 5, 6, 7, 8] edges = [(1, 2), (1, 3), (2, 3), (4, 5), (4, 6), (5, 7), (6, 7)] print(connected(nodes, edges)) # False nodes = [1, 2, 3, 4, 5] edges = [] print(connected(nodes, edges)) # False nodes = [1, 2, 3, 4, 5] edges = [(1, 2), (1, 3), (1, 4), (1, 5)] print(connected(nodes, edges)) # True