networkx

Science

Algorytmy 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.

NetworkX Social GraphUruchom w Edytorze
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.