networkx
ScienceAlgorytmy grafowe
Przegląd networkx
NetworkX to standardowa biblioteka Pythona do tworzenia, manipulowania i badania struktury, dynamiki i funkcji złożonych sieci. Obsługuje grafy nieskierowane, grafy skierowane (digrafy) i multigrafy oraz zapewnia bogaty zestaw algorytmów do wyszukiwania ścieżek, centralności, wykrywania społeczności, grupowania i nie tylko.
PyRunumożliwia uruchamianie eksperymentów NetworkX bezpośrednio w przeglądarce. Niezależnie od tego, czy studiujesz teorię grafów, modelujesz sieć społecznościową, czy badasz algorytmy najkrótszej ścieżki, NetworkX jest dostępny natychmiast poprzez micropip, bez żadnej lokalnej instalacji.
Dane wyjściowe kodu i wykonania
Zbuduj graf skierowany i oblicz najkrótsze ścieżki.
import networkx as nx
G = nx.DiGraph()
G.add_edges_from([
("Alice", "Bob"),
("Alice", "Charlie"),
("Bob", "Diana"),
("Charlie", "Diana"),
("Diana", "Eve"),
])
print("Nodes:", list(G.nodes()))
print("Edges:", list(G.edges()))
print("\nIn-degree (followers):")
for node, deg in G.in_degree():
print(f" {node}: {deg}")
print("\nShortest path Alice → Eve:")
path = nx.shortest_path(G, "Alice", "Eve")
print(" → ".join(path))
print("\nIs DAG?", nx.is_directed_acyclic_graph(G))Powiązane pakiety
Polecane zasoby Pythona
Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.
Pętle Pythona
Dowiedz się, jak używać pętli Pythona do iteracji danych. Opanuj pętle for, pętle while, przerywaj, kontynuuj i pętluj najlepsze praktyki dzięki interaktywnym przykładom.
Jak sortować listę w Pythonie
Dowiedz się, jak sortować listę w Pythonie za pomocą metody sort() i funkcji sorted(). Odkryj przykłady niestandardowego sortowania kluczy i odwrotnej kolejności.
Ściągawka dotycząca metod ciągów w Pythonie
Kompletny przewodnik dotyczący manipulacji ciągami znaków w języku Python. Opanuj formatowanie, wyszukiwanie, dzielenie, zastępowanie i sprawdzanie właściwości ciągów.
Python kontra JavaScript: który język programowania jest najlepszy?
Kompleksowe porównanie Pythona i JavaScript. Poznaj różnice w składni, wydajność, przypadki użycia (backend vs frontend) i przykłady kodowania.