w3resource

Java Exercises: Get the Postorder traversal of its nodes' values of a given a binary tree

Java Basic: Exercise-127 with Solution

Write a Java program to get the Postorder traversal of its nodes' values of a given a binary tree.

Sample Binary Tree

Java Basic Exercises: Sample Binary Tree.

Postorder Traversal:

Java Basic Exercises: Get the Postorder traversal of its nodes' values of a given a binary tree.

Sample Solution:

Java Code:

class Node
{
    int key;
    Node left, right;

    public Node(int item)
    {
        key = item;
        left = right = null;
    }
}

class BinaryTree
{
  // Root of Binary Tree
    Node root;

    BinaryTree()
    {
        root = null;
    }

  // Print the nodes of binary tree

    void print_Postorder(Node node)
    {
        if (node == null)
            return;

        print_Postorder(node.left);

        print_Postorder(node.right);

        System.out.print(node.key + " ");
    }

   // Wrappers over above recursive functions
    void print_Postorder()  
	{   
	   print_Postorder(root);  
	}
        public static void main(String[] args)
    {
       BinaryTree tree = new BinaryTree();
        tree.root = new Node(55);
        tree.root.left = new Node(21);
        tree.root.right = new Node(80);
        tree.root.left.left = new Node(9);
        tree.root.left.right = new Node(29);
        tree.root.right.left = new Node(76);
        tree.root.right.right = new Node(91);

        System.out.println("\nPostorder traversal of binary tree is: ");
        tree.print_Postorder();
    }
}

Sample Output:

Postorder traversal of binary tree is: 
9 29 21 76 91 80 55  

Flowchart:

Flowchart: Java exercises: Get the Postorder traversal of its nodes' values of a given a binary tree.

Java Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a Java program to get the inorder traversal of its nodes' values of a given a binary tree.
Next: Write a Java program to calculate the median of unsorted array of integers, find the median of it.

What is the difficulty level of this exercise?



Java: Tips of the Day

Try and catch:

Java is excellent at catching errors, but it can only recover gracefully if you tell it what to do. The cascading hierarchy of attempting to perform an action in Java starts with try, falls back to catch, and ends with finally. Should the try clause fail, then catch is invoked, and in the end, there's always finally to perform some sensible action regardless of the results. Here's an example:

try {
        cmd = parser.parse(opt, args); 
       
        if(cmd.hasOption("help")) {
                HelpFormatter helper = new HelpFormatter();
                helper.printHelp("Hello ", opt);
                System.exit(0);
                }
        else {
                if(cmd.hasOption("shell") || cmd.hasOption("s")) {
                String target = cmd.getOptionValue("tgt");
                } // else
        } // fi
} catch (ParseException err) {
        System.out.println(err);
        System.exit(1);
        } //catch
        finally {
                new Hello().helloWorld(opt);
        } //finally
} //try

It's a robust system that attempts to avoid irrecoverable errors or, at least, to provide you with the option to give useful feedback to the user. Use it often, and your users will thank you!

Ref: https://red.ht/3EZc9OC