what2(bt,x) בודקת שאין את הערך x בשום צומת בתת-העץ; what1(bt) מדפיסה את הערך של כל צומת שבשני תתי-העצים שלו (שמאל וימין) אין אף מופע של ערך הצומת עצמו, ואז ממשיכה רקורסיבית.
what2(bt,x) בודקת שאין את הערך x בשום צומת בתת-העץ; what1(bt) מדפיסה את הערך של כל צומת שבשני תתי-העצים שלו (שמאל וימין) אין אף מופע של ערך הצומת עצמו, ואז ממשיכה רקורסיבית.
public static void what1(BinNode<Integer> bt)
{
if(bt!=null){
int x=bt.getValue();
if(what2(bt.getLeft(),x) && what2(bt.getRight(),x))
System.out.println(x);
what1(bt.getLeft());
what1(bt.getRight());
}
}
public static boolean what2(BinNode<Integer> bt, int x)
{
if(bt==null)return true;
if(bt.getValue()==x)return false;
return what2(bt.getLeft(), x) && what2(bt.getRight(), x);
}
העץ הבינרי bt שבסעיפים א'-ה' (200dpi crop, עמ' 9): שורש=3; בן-שמאל של השורש=3 (עם בן-שמאל=1, בן-ימין=3 שיש לו בן-ימין=2); בן-ימין של השורש=10 (עם בן-שמאל=9 שיש לו בן-שמאל=7, ובן-ימין=7 שיש לו בן-ימין=10).
3
/ \
3 10
/ \ / \
1 3 9 7
\ / \
2 7 10
מה תהיה תוצאת זימון הפעולה what2(bt, 10)? חובה להראות את המעקב!
תנו דוגמה של הפרמטר x, שעבורו זימון הפעולה what2(bt, x) יחזיר תוצאה שונה מזו שהתקבלה בסעיף א'.
מה מבצעת הפעולה what2(BinNode<Integer> bt, int x) באופן כללי?
מה תהיה תוצאת הזימון what1(bt) לעץ הנתון bt? חובה להראות את המעקב! הערה: אין צורך במעקב אחרי הפעולה what2.
מה מבצעת הפעולה what1(bt) באופן כללי? bt
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.