इस लेख में, हम समझेंगे कि इनऑर्डर ट्री ट्रैवर्सल कैसे किया जाता है। इनऑर्डर ट्रैवर्सल में, प्रत्येक नोड को सबट्री के बीच प्रोसेस किया जाता है। सरल शब्दों में, लेफ्ट सबट्री, नोड और फिर राइट सबट्री पर जाएं।
नीचे उसी का एक प्रदर्शन है -
मान लें कि हमारा इनपुट है -
Run the program
वांछित आउटपुट होगा -
The In-Order traversal of the tree_object is: 5->12->6->1->9->
एल्गोरिदम
Step 1 - START Step 2 - A class with the data specifications is previously defined. Step 3 - Create a new instance of the class. Step 4 - Initialize the instance with relevant values. Step 5 - Invoke the method to perform inorder traversal. Step 6 - Display the result Step 7 - Stop
उदाहरण 1
यहां, हमने इन-ऑर्डर ट्रैवर्सल के लिए पुनरावर्ती विधि का उपयोग किया है।
class Node { int item; Node left_node, right_node; public Node(int key) { item = key; left_node = right_node = null; } } public class Tree { Node root; Tree() { root = null; } void inOrder(Node node) { if (node == null) return; inOrder(node.left_node); System.out.print(node.item + "->"); inOrder(node.right_node); } public static void main(String[] args) { Tree tree_object = new Tree(); System.out.println("A tree_object object is defined: "); tree_object.root = new Node(1); tree_object.root.left_node = new Node(12); tree_object.root.right_node = new Node(9); tree_object.root.left_node.left_node = new Node(5); tree_object.root.left_node.right_node = new Node(6); System.out.println("The In-Order traversal of the tree_object is: "); tree_object.inOrder(tree_object.root); } }
आउटपुट
A tree_object object is defined: The In-Order traversal of the tree_object is: 5->12->6->1->9->
उदाहरण 2
यहां, हम इन-ऑर्डर ट्रैवर्सल के लिए गैर-पुनरावर्ती विधि का उपयोग कर रहे हैं।
import java.util.Stack; class Node { int data; Node left_node, right_node; public Node(int item) { data = item; left_node = right_node = null; } } class tree { Node root; void inorder() { if (root == null) return; Stack<Node> temp_stack = new Stack<Node>(); Node current_node = root; while (current_node != null || temp_stack.size() > 0) { while (current_node != null) { temp_stack.push(current_node); current_node = current_node.left_node; } current_node = temp_stack.pop(); System.out.print(current_node.data + " "); current_node = current_node.right_node; } } public static void main(String args[]) { tree tree = new tree(); System.out.println("A tree_object object is defined: "); tree.root = new Node(1); tree.root.left_node = new Node(2); tree.root.right_node = new Node(3); tree.root.left_node.left_node = new Node(4); tree.root.left_node.right_node = new Node(5); System.out.println("The In-Order traversal of the tree_object is: "); tree.inorder(); } }
आउटपुट
A tree_object object is defined: The In-Order traversal of the tree_object is: 4 2 5 1 3