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

C++ प्रोग्राम बाइनरी सर्च ट्री का न्यूनतम मूल्य ज्ञात करने के लिए

यह एक बाइनरी सर्च ट्री का न्यूनतम मूल्य खोजने का कार्यक्रम है।

एल्गोरिदम

Begin
   Declare nd as a structure.
   Declare d to the integer datatype.
   Declare pointer lt to the structure nd type.
   Declare pointer lt to the structure nd type.
   Declare function new_nd() to the structure nd type.
   Declare d to the integer datatype.
   Pass them as a parameter.
   Declare pointer nd to the structure nd type.
      Initialize nd = (struct nd*) malloc(sizeof(struct nd)).
   nd->d = d.
   nd->lt = NULL.
   nd->rt = NULL.
   return(nd).
End
Begin
   Declare function add_node() to the structure nd type.
   Declare pointer nd to the structure nd type.
   Declare d to the integer datatype.
   Pass them as a parameter.
   if (nd == NULL) then
      return(new_nd(d)).
   else
      if (d <= nd->d) then
         nd->lt = add_node(nd->lt, d).
   else
      nd->rt = add_node(nd->rt, d).
   return nd.
End
Begin
   Declare minimum_val() function to the integer datatype.
   Declare pointer nd to the structure nd type.
   Pass it as a parameter.
   Declare pointer cur to the structure nd type.
      Initialize cur = nd.
   while (cur->lt != NULL) do
   cur = cur->lt.
   return(cur->d).
   Declare pointer root to the structure nd type.
      Initialize root = NULL.
   root = add_node(root, 54).
   add_node(root, 32).
   add_node(root, 25).
   add_node(root, 45).
   add_node(root, 65).
   add_node(root, 75).
   Print "The Minimum value of the given binary search tree is: ".
   Print the minimum value of binary tree.
   getchar().
End.

उदाहरण

#include <bits/stdc++.h>
using namespace std;
struct nd {
   int d;
   struct nd* lt;
   struct nd* rt;
};
struct nd* new_nd(int d) {
   struct nd* nd = (struct nd*)
   malloc(sizeof(struct nd));
   nd->d = d;
   nd->lt = NULL;
   nd->rt = NULL;
   return(nd);
}
struct nd* add_node(struct nd* nd, int d) {
   if (nd == NULL)
   return(new_nd(d));
   else {
      if (d <= nd->d)
         nd->lt = add_node(nd->lt, d);
      else
         nd->rt = add_node(nd->rt, d);
      return nd;
   }
}
int minimum_val(struct nd* nd) {
   struct nd* cur = nd;
   while (cur->lt != NULL) {
      cur = cur->lt;
   }
   return(cur->d);
}
int main() {
   struct nd* root = NULL;
   root = add_node(root, 54);
   add_node(root, 32);
   add_node(root, 25);
   add_node(root, 45);
   add_node(root, 65);
   add_node(root, 75);
   cout << "The Minimum value of the given binary search tree is: " << minimum_val(root);
   getchar();
   return 0;
}

आउटपुट

The Minimum value of the given binary search tree is: 25

  1. सी ++ में बाइनरी ट्री में निकटतम पत्ता खोजें

    मान लीजिए, एक बाइनरी ट्री दिया गया है। इसमें विभिन्न स्तरों पर पत्ती की गांठें होती हैं। एक और पॉइंटर दिया गया है, जो एक नोड की ओर इशारा कर रहा है। हमें नुकीले नोड से निकटतम लीफ नोड की दूरी ज्ञात करनी होगी। विचार करें कि पेड़ नीचे जैसा है - यहां लीफ नोड्स 2, -2 और 6 हैं। यदि पॉइंटर नोड -5 की ओर इ

  1. C++ में बाइनरी सर्च ट्री में न्यूनतम मान वाला नोड खोजें

    मान लीजिए कि हमारे पास एक बाइनरी सर्च ट्री है। हमें बाइनरी सर्च ट्री में न्यूनतम तत्व खोजना है। तो अगर बीएसटी नीचे जैसा है - न्यूनतम तत्व 1 होगा। जैसा कि हम जानते हैं कि लेफ्ट सबट्री में हमेशा छोटे तत्व होते हैं। इसलिए यदि हम बाएं सबट्री को बार-बार पार करते हैं जब तक कि बाईं ओर शून्य न हो, हम सब

  1. सी ++ प्रोग्राम में बाइनरी सर्च?

    द्विआधारी खोज, जिसे अर्ध-अंतराल खोज, लॉगरिदमिक खोज या बाइनरी चॉप के रूप में भी जाना जाता है, एक खोज एल्गोरिथ्म है जो एक क्रमबद्ध सरणी के भीतर लक्ष्य मान की स्थिति का पता लगाता है। बाइनरी खोज लक्ष्य मान की तुलना सरणी के मध्य तत्व से करती है। यदि वे समान नहीं हैं, तो आधा जिसमें लक्ष्य झूठ नहीं बोल सकत