yield returnで2分木の外部イテレータ
yield return - チキン煮込みチーズミックス4辛 で、できないとか言ってたけどできるやんけ。なんでこんな事思いつかんのじゃ...。
// NodeクラスのGetEnumeratorだけ抜粋 public IEnumerator<int> GetEnumerator() { if (_left != null) { foreach (int n in _left) { yield return n; } } yield return _value; if (_right != null) { foreach (int n in _right) { yield return n; } } }
内部イテレータを外部イテレータに変形する(その2:2分木構造の場合) - チキン煮込みチーズミックス4辛 は長らく放置していて、まだ解決していない。最近また考えている。今後どうにかするつもり。プログラミング楽しいなー。