המשימה
בעץ שלמטה יש שדרה ימנית: מהשורש ימינה, ומשם ימינה שוב, עד שנגמר. מלאו את הטבלה. כל שורת מעקב היא המצב אחרי סיבוב שלם אחד של הלולאה. בעמודת p רשמו את הערך שבצומת, או null כשהמצביע יצא מהעץ. המשימה: כתבו פעולה שמקבלת שורש של עץ בינארי ומחזירה את סכום הצמתים בשדרה ה*שמאלית* — מהשורש שמאלה עד הסוף. עץ ריק מחזיר 0. עבור העץ שלמטה: השדרה השמאלית היא 8, 3, 1 והסכום 12. [עץ בינארי] [טבלת מעקב]
קוד הפתיחה
using System;
class Program {
static int LeftSpineSum(BinNode<int> root) {
// כתוב את הפתרון כאן
return 0;
}
static void Main() {
BinNode<int> one = new BinNode<int>(1);
BinNode<int> six = new BinNode<int>(6);
BinNode<int> three = new BinNode<int>(one, 3, six);
BinNode<int> f14 = new BinNode<int>(14);
BinNode<int> ten = new BinNode<int>(null, 10, f14);
BinNode<int> root = new BinNode<int>(three, 8, ten);
Console.WriteLine(LeftSpineSum(root)); // 12
Console.WriteLine(LeftSpineSum(ten)); // 10
Console.WriteLine(LeftSpineSum(null)); // 0
}
}
כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון —
כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות
בדיקה חיצוני.