המשימה
כתוב פעולה **רקורסיבית** שמקבלת שורש של עץ בינארי של מספרים שלמים ומחזירה את סכום כל הערכים שבו. הנחיות: • מקרה הבסיס: עץ ריק (null) — הסכום 0. • צעד הרקורסיה: הערך של הצומת הנוכחי, ועוד סכום תת-העץ השמאלי, ועוד סכום תת-העץ הימני. • זה בדיוק אותו שלד של ספירת הצמתים. ההבדל היחיד: במקום להוסיף 1 לכל צומת, מוסיפים את הערך שבו. ממשק מבני הנתונים כבר מצורף למשימה. [עץ בינארי]
קוד הפתיחה
using System;
class Program {
static int SumTree(BinNode<int> root) {
// כתוב את הפתרון כאן — רקורסיבי
return 0;
}
static void Main() {
// 4
// / \
// 2 7
// / \ \
// 1 3 9
BinNode<int> one = new BinNode<int>(1);
BinNode<int> three = new BinNode<int>(3);
BinNode<int> nine = new BinNode<int>(9);
BinNode<int> two = new BinNode<int>(one, 2, three);
BinNode<int> seven = new BinNode<int>(null, 7, nine);
BinNode<int> root = new BinNode<int>(two, 4, seven);
BinNode<int>.PrintTree(root);
Console.WriteLine(SumTree(root)); // 26
Console.WriteLine(SumTree(null)); // 0
}
}
כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון —
כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות
בדיקה חיצוני.