// Er indre klasse i en treklasse med rot ved navn "root", // og bruker std. Stack. private class PostFiksTraversering implements Iterator { Stack stakk; public PostFiksTraversering() { stakk = new Stack(); skliVenstreHoyre(root); } private Node skliVenstre(Node n) { while (n != null) { stakk.push(n); n = n.l; } return stakk.peek(); } private void skliVenstreHoyre(Node n) { n = skliVenstre(n); while (n.r != null) { n = skliVenstre(n.r); } } public boolean hasNext() { return !stakk.isEmpty(); } public C next() { Node n = stakk.pop(); if (hasNext() && stakk.peek().r != n && stakk.peek().r != null) skliVenstreHoyre(stakk.peek().r); return n.c; } public void remove() { throw new UnsupportedOperationException(); } }