פסאודו-קוד
שיעור 4 מתוך 9 בקורס חיפוש לרוחב – אלגוריתמים על גרפים של Coddy.
bfs(n, edges, start):
build adjacency (sort each list ascending)
visited = all false
queue = [start]; visited[start] = true
order = []
while queue not empty:
node = queue.dequeue() # take from the FRONT
order.add(node)
for nb in adj[node]:
if not visited[nb]:
visited[nb] = true
queue.enqueue(nb)
return order- ההבדל היחיד מ-DFS הוא המבנה: תור (FIFO) במקום מחסנית (LIFO).
- דרך פשוטה למימוש התור היא באמצעות מערך עם אינדקס ראש שמתקדם: מוציאים מהתור על ידי קריאת
queue[head]וקידוםhead.
נסו בעצמכם
השיעור הזה לא כולל אתגר קוד.
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה חיפוש לרוחב – אלגוריתמים על גרפים
תרגלו בעצמכם: קומפיילר C אונליין