13.3 Bouwsteen 1 — het web als graph
Leerdoel: je slaat het web op als een graph en schrijft de helper die straks de kern van de formule is: wie linkt naar deze pagina?
Het web in Python
Een dict waarbij elke pagina wijst naar de set pagina's waar hij naar linkt:
WEB = {
"A": {"B", "C"},
"B": {"C"},
"C": {"A"},
"D": {"C"},
}
WEB["A"] is {"B", "C"} — de uitgaande links van A.
Wat we nodig hebben
Voor de formule moet je straks weten welke pagina's naar p linken
(en hoeveel links die elk uitdelen). Schrijf de helper wie_linkt_naar.
Bouw en test
Code-omgeving wordt voorbereid…
Antwoord
def wie_linkt_naar(web, p):
return {i for i in web if p in web[i]}
Voor elke pagina i kijk je of p in zijn linkset zit. D zit bij
niemand, dus wie_linkt_naar(WEB, "D") is leeg.
Door naar stap 4: de startverdeling →.