Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public String printPostOrder() {
- if (root == null)
- return "";
- int maxDepth = maxDepth();
- ArrayList<ArrayList<Integer>> arrays = new ArrayList<ArrayList<Integer>>(maxDepth);
- printPostOrder(root, arrays, 0);
- String str = "";
- for (int i=0; i<arrays.size(); i++) {
- for (int j=0; j<arrays.get(i).size(); j++) {
- if (j==arrays.get(i).size()-1)
- str += arrays.get(i).get(j);
- else
- str += arrays.get(i).get(j) + ", ";
- }
- }
- return str;
- }
- private void printPostOrder(Node node, ArrayList<ArrayList<Integer>> arrays, int level) {
- if (node == null || level == maxDepth() -1)
- return;
- arrays.get(level).add(node.value);
- printPostOrder(node.left, arrays, level++);
- printPostOrder(node.right, arrays, level);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement