תרגול מדעי המחשב

גובה העץ

מאתגר C#

המשימה

גובה של עץ הוא מספר הקשתות במסלול הארוך ביותר מהשורש לעלה.
עץ בן צומת אחד — גובהו 0. עץ ריק — נגדיר את גובהו כ--1.

כתוב פעולה **רקורסיבית** שמקבלת שורש ומחזירה את גובה העץ.

הנחיות:
• גובה העץ = 1 + הגבוה מבין גובה תת-העץ השמאלי וגובה תת-העץ הימני.
• ההגדרה של -1 לעץ ריק היא מה שגורם לחשבון לצאת נכון — נסה להבין למה.

ממשק מבני הנתונים כבר מצורף למשימה.

```ds:tree
{"title":"אותו עץ — הגובה 2, כי המסלול הארוך הוא 4 → 2 → 1","nodes":["4","2","7","1"]}
```

קוד הפתיחה

using System;

class Program {

    static int Height(BinNode<int> root) {
        // כתוב את הפתרון כאן — רקורסיבי
        return 0;
    }

    static void Main() {
        //        4
        //       / \
        //      2   7
        //     /
        //    1
        BinNode<int> one  = new BinNode<int>(1);
        BinNode<int> two  = new BinNode<int>(one, 2, null);
        BinNode<int> sev  = new BinNode<int>(7);
        BinNode<int> root = new BinNode<int>(two, 4, sev);

        Console.WriteLine(Height(root));   // 2
        Console.WriteLine(Height(sev));    // 0
        Console.WriteLine(Height(null));   // -1
    }
}

כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.

התרגיל הבא ספירת צמתים בעץ
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון — כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות בדיקה חיצוני.