public void postOrderTraveralIterative() throws EmptyTreeException,
			InvalidPositionException {
		if (root == null)
			return;
		Stack<BTPosition<T>> s = new Stack<>();
		s.push(root);
		BTPosition<T> p = null;
		while (!s.empty()) {
			BTPosition<T> c = s.peek();
			if (p == null || p.getLeft() == c || p.getRight() == c) {

				if (c.getLeft() != null)
					s.push(c.getLeft());
				else if (c.getRight() != null)
					s.push(c.getRight());

			} else if (c.getLeft() == p) {
				if (c.getRight() != null)
					s.push(c.getRight());

			} else {
				System.out.println("-post order- " + c.element());
				s.pop();
			}
			p = c;
		}
	}