Bouwsteen 1 — het web als graph
Hier bouw je op verder: Dictionaries, Sets en Functies
Weet je dit niet meer zeker? Lees het terug voordat je verdergaat.
- Python Dictionaries
- Python Sets
- Python Functies
Leerdoel: je slaat het web op als een graph en beantwoordt de vraag
achter de formule: wie linkt naar deze pagina? De controle die je
daarvoor schrijft, p in web[i], komt in bouwsteen 3 terug in de formule.
Het web in Python
Je slaat het web op als een dict. Elke pagina wijst naar de set pagina's waar ze 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 weten welke pagina's naar p linken, en hoeveel
links die elk uitdelen. Het eerste zoek je uit met de helper
wie_linkt_naar; die schrijf je nu.
Bouw en test
Code-omgeving wordt voorbereid…
Antwoord
def wie_linkt_naar(web, p):
resultaat = set()
for i in web:
if p in web[i]:
resultaat.add(i)
return resultaat
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 de startverdeling →.