אתם מתרגלים שאלה מתוך מה"ט מבני נתונים ותכנות מונחה עצמים — הנדסאי תוכנהמבחן 2024 · אביב מועד ב · שאלה 5כל שאלות המבחן ←
מבנים לינאריים›רשימות מקושרות

נתונה הפעולה Mystery הבאה:

public static Node<int> Mystery (Node<int> chain)
{
    Node<int> p = chain;
    int x = p.GetValue();
    while(p.GetNext() != null)
    {
        int y = p.GetNext().GetValue();
        p.GetNext().SetValue(x);
        x = y;
        p = p.GetNext();
    }
    chain.SetValue(x);
    return chain;
}

נתונה הפעולה Miracle הבאה:

public static Node<int> Miracle(Node<int> n)
{
    Node<int> p = n;
    while(p.GetNext() != null)
    {
        p = p.GetNext();
    }
    p.SetNext(n);
    n = n.GetNext();
    p = p.GetNext();
    p.SetNext(null);
    return n;
}
סעיף א

נתונה שרשרת החוליות הבאה:

chain → 10 → 7 → 14 → 5 → 7 → 2 → 4

איך תיראה השרשרת אחרי זימון הפעולה Mystery(chain)? יש להראות מעקב אחרי ביצוע הפעולה.

סעיף ב

אחרי זימון הפעולה Miracle(n) התקבלה השרשרת הבאה:

איך נראתה השרשרת לפני זימון הפעולה?

סעיף ג

מה מבצעות הפעולות Mystery(chain) ו-Miracle(n) כאשר הן מקבלות הפניות לחוליות הראשונות של שרשרות החוליות של מספרים שלמים?

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

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

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

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