עבור לתוכן

C#| פעולה חיצונית לעץ בינארי

Featured Replies

פורסם

יותר טוב, אבל למה לקרוא ל-(onepath(t.getleft פעמיים? הרי אם התנאי של ה-if התקיים, אתה כבר יודע מה התוצאה של הקריאה לפונקציה ויכול להחזיר אותה ישר.

חוץ מזה, הביטוי x == true זהה לחלוטין לביטוי x (כאשר x הוא ביטוי בוליאני כלשהו), כלומר במקום:

if (x == true)

פשוט צריך לעשות:

if (x)

נ.ב. אפשר לדעת באיזו מסגרת אתה לומד?

  • תגובות 32
  • צפיות 4.2k
  • נוצר
  • תגובה אחרונה
פורסם
  • מחבר

סבבה הבנתי סוף סוף :xyxthumbs:

בקשר למה ששאלתי אותך לפני כמה תגובות, אמרת ששיש בעיה בפעולה הזאת למה??


if(t.GetLeft==null && t.GETright==null)
return true;if(t==null)
return false;
if(t.GEtleft!=null && t.GetLeft.getinfo==t.getinfo ||( t.getright!=null&&t.getright.getinfo==t.getinfo))
return onepath(t.getleft)||onepath(t.getright));

בקשר לשאלה שלך, אני עושה השנה בגרות -2 יחידות השלמה ל5. את השלוש יחידות הראשונות למדתי בבית ספר אבל סגרו את המגמה, אז אני לומד לבד ונעזר בעיקר בך ;)

ממש תודה רבה על העזרה!!

פורסם

תחשוב על המקרה שבו האבא שווה לבן הימני ולא לשמאלי, ו-onepath מחזיר אמת על הבן השמאלי ושקר על הבן הימני.

כמו שאמרתי - צריך להפריד לחלוטין בין הבן הימני והשמאלי.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים