אתם מתרגלים שאלה מתוך בגרות מדעי המחשב — מבני נתונים (שאלון 899271)מבחן 2025 · קיץ מועד Special · שאלה 3כל שאלות המבחן ←
עציםעצים בינאריים

לפניכם עץ בינארי ששורשו root.

נתונות הפעולות sod ו-secret:

public static boolean sod(BinNode<Integer> root, int num)
{
    if (root == null)
        return false;
    if (root.getValue() == num)
        return true;
    return sod(root.getLeft(), num) || sod(root.getRight(), num);
}

public static int secret(BinNode<Integer> root, int x)
{
    if (!sod(root,x))
        return 0;
    if ((root.getLeft() != null && root.getLeft().getValue() == x) ||
        (root.getRight() != null && root.getRight().getValue() == x))
    {
        return root.getValue()+ secret(root.getLeft(),x)+
                              secret(root.getRight(),x);
    }
    return secret(root.getLeft(),x)+secret(root.getRight(),x);
}

עץ בינארי ששורשו root

root=50
  L=20, R=25
  20.L=10, 20.R=15(a)
  10.L=15(b) [leaf]
  15(a).L=10(c) [leaf], 15(a).R=5 [leaf]
  25.R=15(d) [leaf]
סעיף א(1)

מהו הערך שיוחזר מהפעולה עבור הזימון sod(root, 25)? יש לבצע מעקב על הקוד.

סעיף א(2)

כתבו זימון נוסף שעבורו יוחזר ערך שונה מהערך שהוחזר בסעיף 1.

sod(root, ?)

סעיף א(3)

הסבירו מה מבצעת הפעולה sod.

סעיף ב(1)

מהו הערך שיוחזר מהפעולה עבור הזימון: secret(root, 10)? יש לבצע מעקב. אין צורך לבצע מעקב על הקריאה לפעולה sod אלא רק לציין את הערך שחוזר מהפעולה.

סעיף ב(2)

מהו הערך שיוחזר מהפעולה עבור הזימון secret(root, 5)? אין צורך לבצע מעקב.

סעיף ב(3)

כתבו זימון נוסף שעבורו יוחזר הערך 50. אין צורך לבצע מעקב.

secret(root, ?)

סעיף ב(4)

הסבירו מה מבצעת הפעולה secret.

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

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

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

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