אתה עוקב רקורסיבית על העץ לפי סדר הקריאה בהחזר להליך הרקורסיבי עד שמוחזר ערך כלשהו שאינו רקורסיבי (במקרה זה אמת או שקר) שמאפשר לך להמשיך הלאה בקריאות הרקורסיביות. מבחינת הגדרה - זה לא פשוט להסביר; בפני השטח זה לא סיפור גדול.
כל עוד התנאי מתקיים אתה ממשיך לקרוא להליך:
תחילה לתת עץ שמאלי ואז לתת עץ ימיני.
שלחת לתת עץ שמאלי - כעת אתה נמצא בו, שוב פעם הגעת להליך שקורא לתת עץ שמאלי ואז לתת עץ ימיני.
בקיצור זה ילך ככה (במידה ויש עץ תקין - אם העץ אינו מתאים להגדרה של ההליך אז יוחזר שקר איפהשהו באמצע גם):
תע"ש > תע"ש עד לתת עץ השמאלי ביותר.
עולה לאביו ובודק את תת העץ הימיני, אם לימיני יש שמאליים אז את כל השמאליים, עולה חזרה לאביו, בודק את הימיני.
החוקיות:
בודק את כל השמאליים עד שמגיע לעץ ריק, עולה רמת אחת מעל, יורד ימינה - בודק את כל השמאליים שיש עד שמגיע לעץ ריק, עולה רמה אחת מעל, יורד ימינה - אם עץ ריק אז עולה למעלה.
בקיצור, זה באמת קשה כאן בפורום.
מומלץ לעבוד עם חבר.