Advertisement
Guest User

printPostOrder

a guest
Nov 24th, 2014
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.76 KB | None | 0 0
  1. public String printPostOrder() {
  2. if (root == null)
  3. return "";
  4. int maxDepth = maxDepth();
  5. ArrayList<ArrayList<Integer>> arrays = new ArrayList<ArrayList<Integer>>(maxDepth);
  6. printPostOrder(root, arrays, 0);
  7. String str = "";
  8. for (int i=0; i<arrays.size(); i++) {
  9. for (int j=0; j<arrays.get(i).size(); j++) {
  10. if (j==arrays.get(i).size()-1)
  11. str += arrays.get(i).get(j);
  12. else
  13. str += arrays.get(i).get(j) + ", ";
  14. }
  15. }
  16. return str;
  17. }
  18.  
  19. private void printPostOrder(Node node, ArrayList<ArrayList<Integer>> arrays, int level) {
  20. if (node == null || level == maxDepth() -1)
  21. return;
  22. arrays.get(level).add(node.value);
  23. printPostOrder(node.left, arrays, level++);
  24. printPostOrder(node.right, arrays, level);
  25. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement