אתם מתרגלים שאלה מתוך בגרות מדעי המחשב — מבני נתונים (שאלון 899271)מבחן 2024 · קיץ מועד א · שאלה 6כל שאלות המבחן ←
גרפיםמעבר על גרף

שאלה 6 במסלול אלגוריתמים. נתון גרף G(V, E) לא קשיר ולא מכוון, שיש בו n קודקודים מ-v0 עד vn-1.

הגרף שבדוגמה (עמוד 9): 10 קודקודים (0–9), 9 קשתות: 1–5 | 2–8, 2–4, 8–4 | 3–7, 7–9, 9–6, 6–0, 0–7. שלושת רכיבי הקשירות שלו: {1,5}, {2,4,8}, {0,3,6,7,9}.

בשני הסעיפים נדרש אלגוריתם יעיל, שאינו עובר על כל המסלולים האפשריים בגרף.

הגרף G(V, E) שבדוגמה (10 קודקודים 0–9, 9 קשתות):

הגרף G(V, E)

קשתות: 1–5 | 2–8, 2–4, 8–4 | 3–7, 7–9, 9–6, 6–0, 0–7
שלושת רכיבי הקשירות: {1, 5}, {2, 4, 8}, {0, 3, 6, 7, 9}

שלושת רכיבי הקשירות מסומנים בקו מקווקו:

שלושת רכיבי הקשירות מסומנים בקו מקווקו

סעיף א

כתבו אלגוריתם המוצא ומחזיר את כל הקודקודים שיש מסלול בין קודקוד בגרף – vj וביניהם. הערה: יש לכתוב אלגוריתם יעיל שאינו עובר על כל המסלולים האפשריים. דוגמה: עבור הגרף שלפניכם, וקודקוד 3, האלגוריתם יחזיר את הקודקודים 0, 6, 7, 9. הסבר: קיים מסלול בין הקודקוד 3 ובין הקודקודים 0, 6, 7, 9.

סעיף ב

"רכיב קשירות" בגרף לא מכוון G(V, E) הוא קבוצת קודקודים שבה בין כל שני קודקודים יש מסלול, ואין שום קשת היוצאת מקודקוד בקבוצה לקודקוד שאינו בקבוצה. קודקוד שאין ממנו קשת ובין קודקוד אחר יהיה בקבוצה משלו. דוגמה: עבור הגרף שבדוגמה לעיל, שלושת רכיבי הקשירות מסומנים בקו מקווקו: {1, 5}, {2, 4, 8}, {0, 3, 6, 7, 9}. כתבו אלגוריתם המוצא ומחזיר את רכיב הקשירות הקטן ביותר (כלומר את הקבוצה שבה המספר המינימלי של קודקודים) בגרף G(V, E). למשל עבור הדוגמה שלעיל, האלגוריתם יחזיר את הקודקודים 1, 5. הניחו שיש רק רכיב קשירות אחד שהוא הקטן ביותר. הערה: יש לכתוב אלגוריתם יעיל שאינו עובר על כל המסלולים האפשריים.

שאלות ותגובות על השאלה

🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות

שאלו כאן — ותקבלו מענה מוסמך.

🎓 מרצה לתכנות עונה כאן — תקבלו מענה מקצועי