Hitta alla maximala klickar av storleken "n"
Nu när du har utforskat trianglar (och öppna trianglar) är det dags att gå vidare till begreppet maximala klickar. Maximala klickar är klickar som inte kan utökas genom att lägga till en angränsande kant, och de är en användbar egenskap hos grafen när man identifierar gemenskaper. NetworkX tillhandahåller en funktion som låter dig identifiera de noder som ingår i varje maximal klicka i en graf: nx.find_cliques(G). Experimentera med funktionen genom att använda den på T i IPython Shell, och försök sedan besvara övningen.
Den här övningen är en del av kursen
Introduktion till nätverksanalys i Python
Övningsinstruktioner
- Skriv en funktion
maximal_cliques()med två parametrar –Gochsize– som hittar alla maximala klickar av storlekenn.- I
for-slingan itererar du över alla klickar iGmed hjälp av funktionennx.find_cliques(). - Om den aktuella klickan har storleken
size, lägg till den i listanmcs.
- I
- Använd ett
assert-uttryck och din funktionmaximal_cliques()för att kontrollera att det finns33maximala klickar av storleken3i grafenT.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Define maximal_cliques()
def ____:
"""
Finds all maximal cliques in graph `G` that are of size `size`.
"""
mcs = []
for clique in ____:
if ____ == ____:
____
return mcs
# Check that there are 33 maximal cliques of size 3 in the graph T
assert ____ == ____