Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा प्रोग्राम इनऑर्डर ट्री ट्रैवर्सल करने के लिए

इस लेख में, हम समझेंगे कि इनऑर्डर ट्री ट्रैवर्सल कैसे किया जाता है। इनऑर्डर ट्रैवर्सल में, प्रत्येक नोड को सबट्री के बीच प्रोसेस किया जाता है। सरल शब्दों में, लेफ्ट सबट्री, नोड और फिर राइट सबट्री पर जाएं।

नीचे उसी का एक प्रदर्शन है -

मान लें कि हमारा इनपुट है -

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

  1. एक आयत का परिमाप ज्ञात करने के लिए जावा प्रोग्राम

    इस लेख में, हम समझेंगे कि एक आयत का परिमाप कैसे ज्ञात करें। आयत के परिमाप की गणना आयत की सभी भुजाओं की लंबाई जोड़कर की जाती है। नीचे एक आयत का प्रदर्शन है। एक आयत का परिमाप आयत की दो लंबाई और दो चौड़ाई की कुल लंबाई है - इनपुट मान लीजिए हमारा इनपुट है - The length of the sides of a rectangle ar

  1. पायथन में एक एन-आरी पेड़ का व्यास खोजने का कार्यक्रम

    मान लीजिए, हमें एक एन-आरी पेड़ दिया गया है और कहा जाता है कि पेड़ का व्यास निर्धारित करें। पेड़ का व्यास सबसे लंबा रास्ता है जो पेड़ के किन्हीं दो पत्ती नोड्स के बीच मौजूद होता है। हमें पेड़ के व्यास का प्रतिनिधित्व करने वाले पूर्णांक मान का पता लगाना और वापस करना होगा। तो, अगर इनपुट पसंद है तो

  1. पायथन में एक एन-आरी पेड़ की जड़ खोजने का कार्यक्रम

    मान लीजिए, हमें एक सरणी में n-ary पेड़ के नोड दिए गए हैं। हमें पेड़ के रूट नोड को फिर से ढूंढकर वापस करना है। पूर्ण वृक्ष को पूर्व-आदेश संकेतन में लौटाए गए नोड से प्रदर्शित किया जाना है। तो, अगर इनपुट पसंद है तो आउटपुट होगा [14, 27, 32, 42, 56, 65] हम पेड़ के पूर्व-आदेश ट्रैवर्सल को प्रदर्शित क