public void findLeafs() { leafs = new ArrayList<>(1000); Queue<SymbexState> queue = new LinkedList<>(); queue.add(root); while (!queue.isEmpty()) { SymbexState e = queue.poll(); if (e.getChildren().size() == 0) { // leaf found leafs.add(e); } else { queue.addAll(e.getChildren()); } } }