From 6aa95261e57475500c37443eeac79ba4ac582936 Mon Sep 17 00:00:00 2001 From: Fazeel Usmani Date: Mon, 11 Oct 2021 16:20:48 +0530 Subject: [PATCH] Create 11_diameterOfTree.cpp --- .../11_diameterOfTree.cpp | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 10 October LeetCode Challenge 2021/11_diameterOfTree.cpp diff --git a/10 October LeetCode Challenge 2021/11_diameterOfTree.cpp b/10 October LeetCode Challenge 2021/11_diameterOfTree.cpp new file mode 100644 index 0000000..cd134e4 --- /dev/null +++ b/10 October LeetCode Challenge 2021/11_diameterOfTree.cpp @@ -0,0 +1,31 @@ +/** + * Definition for a binary tree node. + * struct TreeNode { + * int val; + * TreeNode *left; + * TreeNode *right; + * TreeNode(int x) : val(x), left(NULL), right(NULL) {} + * }; + */ +class Solution { +public: + int height (TreeNode *root){ + if (root == NULL) + return 0; + return 1 + max( height(root->left), height(root->right) ); + } + + + int diameterOfBinaryTree(TreeNode* root) { + + if (root == NULL) + return 0; + + int d1 = height (root -> left) + height (root -> right); + int d2 = diameterOfBinaryTree (root ->left); + int d3 = diameterOfBinaryTree (root -> right); + + return max(d1, max(d2, d3)); + + } +};