इस ट्यूटोरियल में, हम बाइनरी ट्री में अधिकतम पैरेंट चिल्ड्रन योग खोजने के लिए एक प्रोग्राम पर चर्चा करेंगे
इसके लिए हमें एक बाइनरी ट्री प्रदान किया जाएगा। हमारा काम पैरेंट नोड को उसके बच्चों के नोड्स के साथ जोड़ना है और अंत में उसका अधिकतम पता लगाना और उसका प्रिंट आउट लेना है।
उदाहरण
#include <iostream> using namespace std; struct Node { int data; struct Node *left, *right; }; //inserting nodes struct Node* newNode(int n) { struct Node* root = new Node(); root->data = n; root->left = root->right = NULL; return root; } int maxSum(struct Node* root) { if (root == NULL) return 0; int res = maxSum(root->left); if (root->left != NULL && root->right != NULL) { int sum = root->data + root->left->data + root->right->data; res = max(res, sum); } return max(res, maxSum(root->right)); } int main() { struct Node* root = newNode(15); root->left = newNode(16); root->left->left = newNode(8); root->left->left->left = newNode(55); root->left->right = newNode(67); root->left->right->left = newNode(44); root->right = newNode(17); root->right->left = newNode(7); root->right->left->right = newNode(11); root->right->right = newNode(41); cout << maxSum(root); return 0; }
आउटपुट
91