यह बाइनरी सर्च ट्री का न्यूनतम मान ज्ञात करने का प्रोग्राम है।
एल्गोरिदम
Begin
nd को स्ट्रक्चर के रूप में घोषित करें
d को इंटीजर डेटाटाइप के रूप में घोषित करें
lt को स्ट्रक्चर nd टाइप के पॉइंटर के रूप में घोषित करें
rt को स्ट्रक्चर nd टाइप के पॉइंटर के रूप में घोषित करें
new_nd() फंक्शन को स्ट्रक्चर nd टाइप के रूप में घोषित करें
d को इंटीजर डेटाटाइप के रूप में घोषित करें
उन्हें पैरामीटर के रूप में पास करें
nd को स्ट्रक्चर nd टाइप के पॉइंटर के रूप में घोषित करें
nd = (struct nd*) malloc(sizeof(struct nd)) से इनिशियलाइज़ करें
nd->d = d
nd->lt = NULL
nd->rt = NULL
return(nd)
End
Begin
add_node() फंक्शन को स्ट्रक्चर nd टाइप के रूप में घोषित करें
nd को स्ट्रक्चर nd टाइप के पॉइंटर के रूप में घोषित करें
d को इंटीजर डेटाटाइप के रूप में घोषित करें
उन्हें पैरामीटर के रूप में पास करें
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
minimum_val() फंक्शन को इंटीजर डेटाटाइप के रूप में घोषित करें
nd को स्ट्रक्चर nd टाइप के पॉइंटर के रूप में घोषित करें
इसे पैरामीटर के रूप में पास करें
cur को स्ट्रक्चर nd टाइप के पॉइंटर के रूप में घोषित करें
cur = nd से इनिशियलाइज़ करें
while (cur->lt != NULL) do
cur = cur->lt
return(cur->d)
root को स्ट्रक्चर 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)
"The Minimum value of the given binary search tree is: " प्रिंट करें
बाइनरी ट्री का न्यूनतम मान प्रिंट करें
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