Delete a Binary Tree | Iterative & Recursive

Given a binary tree, write an efficient algorithm to delete entire binary tree.   The program should de-allocate every single node present in the tree, not just change reference of the root node to null.     The idea is to traverse the tree in post-order fashion and delete left and right subtree of a …

Calculate height of binary tree | Iterative & Recursive

Write an efficient algorithm to compute the height of binary tree. The height or depth of a tree is number of edges or nodes on longest path from root node to leaf node.   The program should consider number of nodes in the longest path. For example, height of an empty tree is 0 and …

Check if two binary trees are identical or not | Iterative & Recursive

Write an efficient algorithm to check if two binary trees are identical or not. i.e. if they have identical structure & their contents are also same.     The idea is to traverse both trees and compare value at their root node. If the value matches, we recursively check if left subtree of first tree …

Find Optimal Cost to Construct Binary Search Tree

Find optimal cost to construct binary search tree where each key can repeat several times. We are given frequency of each key in same order as corresponding keys in inorder traversal of a binary search tree.