BCA / B.Tech 7 min read

Algorithm of Tree in Hindi

Algorithm of Tree  in Data Structure in Hindi | डाटा स्ट्रक्चर में  ट्री के अल्गोरिथम हिंदी में :


1. नोड को सम्मिलित करना (Insertion in Tree):

ट्री में एक नया नोड जोड़ने की प्रक्रिया सम्मिलन कहलाती है। यह ऑपरेशन बाइनरी सर्च ट्री और अन्य ट्री संरचनाओं में अलग-अलग तरीके से किया जा सकता है।

इन्सर्शन एल्गोरिदम (Insertion Algorithm in Binary Search Tree):

  • रूट नोड से शुरू करें।
  • अगर नया डेटा रूट से छोटा है, तो लेफ्ट सब-ट्री में जाएं। अगर लेफ्ट सब-ट्री खाली है, तो नया नोड वहां सम्मिलित करें।
  • अगर नया डेटा रूट से बड़ा है, तो राइट सब-ट्री में जाएं। अगर राइट सब-ट्री खाली है, तो नया नोड वहां सम्मिलित करें।
  • यह प्रक्रिया तब तक दोहराएं जब तक सही स्थान न मिल जाए।

इन्सर्शन एल्गोरिदम:

Function Insert(Node root, int data):
   If root is NULL:
      root = Create new Node with data
   Else If data < root.data:
      Insert(root.left, data)
   Else:
      Insert(root.right, data)

2. नोड को हटाना (Deletion in Tree):

ट्री से एक नोड को हटाना जटिल ऑपरेशन है क्योंकि इसे कई मामलों में विभाजित किया जा सकता है:

  • नोड लीफ हो तो उसे सीधे हटा सकते हैं।
  • नोड का केवल एक चाइल्ड हो तो उस चाइल्ड को पैरेंट से जोड़ दें।
  • नोड के दो चाइल्ड हो तो इनऑर्डर सक्सेसर या प्रीडेसर द्वारा नोड को बदलें और फिर उसे हटाएं।

डिलीशन एल्गोरिदम (Deletion Algorithm in Binary Search Tree):

Function Delete(Node root, int key):
   If root is NULL:
      Return root
   If key < root.data:
      root.left = Delete(root.left, key)
   Else If key > root.data:
      root.right = Delete(root.right, key)
   Else:
      If root.left is NULL:
         Return root.right
      Else If root.right is NULL:
         Return root.left
      temp = FindMin(root.right)
      root.data = temp.data
      root.right = Delete(root.right, temp.data)
   Return root

3. ट्री में खोज (Searching in Tree):

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

सर्च एल्गोरिदम (Search Algorithm in Binary Search Tree):

Function Search(Node root, int key):
   If root is NULL or root.data == key:
      Return root
   If key < root.data:
      Return Search(root.left, key)
   Else:
      Return Search(root.right, key)

4. ट्री ट्रैवर्सल (Tree Traversal):

ट्री के सभी नोड्स को क्रम से देखने की प्रक्रिया को ट्रैवर्सल कहते हैं। इसके मुख्य प्रकार हैं:

  • इनऑर्डर (Inorder Traversal): लेफ्ट सब-ट्री, रूट, फिर राइट सब-ट्री।
  • प्रीऑर्डर (Preorder Traversal): रूट, लेफ्ट सब-ट्री, फिर राइट सब-ट्री।
  • पोस्टऑर्डर (Postorder Traversal): लेफ्ट सब-ट्री, राइट सब-ट्री, फिर रूट।
  • इनऑर्डर ट्रैवर्सल एल्गोरिदम (Inorder Traversal Algorithm):

Function Inorder(Node root):
   If root is not NULL:
      Inorder(root.left)
      Print root.data
      Inorder(root.right)

5. ऊँचाई की गणना (Height of Tree):

किसी ट्री की ऊँचाई, रूट से लीफ नोड तक की सबसे लंबी पथ को दर्शाती है।

ऊँचाई एल्गोरिदम (Height Algorithm):

Function Height(Node root):
   If root is NULL:
      Return 0
   Else:
      leftHeight = Height(root.left)
      rightHeight = Height(root.right)
      Return max(leftHeight, rightHeight) + 1