עידו, סטודנט בקורס תכנות מונחה עצמים, רוצה לממש איטרטור שכבות על עצים בינאריים. להזכירכםן, עץ בינארי נתון כ-reference לשורש העץ. השכבה הראשונה של העץ מכילה את שורש העץ, השכבה השנייה של העץ מכילה את הילדים של השורש, וכך הלאה. על האיטרטור בכל הפעלה של next להחזיר רשימה מקושרת שמכילה ערכים של קודקודים של השכבה הבאה של העץ.
דוגמא: בהנתן עץ בינארי שורש עם ערך 5, בן שמאל עם ערך 2, בן ימין עם ערך 8, ובן שמאל של 2 עם ערך 1, ובן ימין של 2 עם ערך 3:
הפלט של האיטרטור היה:
5
2 8
1 3
הניחו שקיימת מחלקה BNode<T> המייצגת קודקוד בעץ בינארי.
נתון מימוש של האיטרטור ובו חלקים חסרים שעליכםן להשלים:
בחרו במימוש הנכון ביותר עבור שדות המחלקה ובנאי:
א.
ב.
ג.