![]() |
VOOZH | about |
A binary tree is a fundamental data structure consisting of nodes, each with at most two children: a left child and a right child. The topmost node is called the root. Binary trees support operations such as insertion, deletion, and various traversal methods like in-order, pre-order, and post-order traversal. They find applications in databases, compilers, and algorithms like Huffman coding, though maintaining balance and efficient memory management are crucial considerations.
Input: Given a binary tree. Your task is to print the value of the leftmost and rightmost node at each level of the given binary tree.
Output: 1 , 2 ,3 , 4 ,6
Explanation: The given values are the values of nodes which are on leftmost and rightmost side of the given binary tree.
If we observe the given problem carefully we have to print the value of first and last node of each level of the tree. As we are dealing with levels we can use level order traversal for this problem. We will do the level order traversal on the given tree and then print the value of first and last node at each level. We will follow the steps given below to solve this problem.
Example: The code demonstrates breadth-first traversal of a binary tree to print the leftmost and rightmost nodes at each level.
1 2 3 4 7
Time complexity: O(N), where n is a no of nodes.
Space complexity: O(N)