


For the given binary tree: [1, 2, 3, -1, -1, 4, 5, -1, -1, -1, -1]
Start Node: 3
1
/ \
2 3
/ \
4 5
The answer should be [1,2,4] because level 1 has an average of 1(AVERAGE of 1), level 2 has an average of 2 (floor value) (AVERAGE of 2 and 3) and level 2 has an average of 4 (floor value) (AVERAGE of 4 and 5).
The first line contains a single integer ‘T’ representing the number of test cases. Then each test case follows.
The first line of each test case contains elements of the tree in the level order form. The line consists of values of nodes separated by a single space. In case a node is null, we take -1 in its place.

For example, the input for the tree depicted in the above image would be :
1
2 3
4 -1 5 6
-1 7 -1 -1 -1 -1
-1 -1
Level 1 :
The root node of the tree is 1
Level 2 :
Left child of 1 = 2
Right child of 1 = 3
Level 3 :
Left child of 2 = 4
Right child of 2 = null (-1)
Left child of 3 = 5
Right child of 3 = 6
Level 4 :
Left child of 4 = null (-1)
Right child of 4 = 7
Left child of 5 = null (-1)
Right child of 5 = null (-1)
Left child of 6 = null (-1)
Right child of 6 = null (-1)
Level 5 :
Left child of 7 = null (-1)
Right child of 7 = null (-1)
The above format was just to provide clarity on how the input is formed for a given tree.
The sequence will be put together in a single line separated by a single space.
Hence, for the above-depicted tree, the input will be given as:
1 2 3 4 -1 5 6 -1 7 -1 -1 -1 -1 -1 -1
For each test case, print ‘H’ integers denoting the average value of all the nodes for a particular level where 'H' is the height of the tree given.
The output of each test case should be printed in a separate line.
You are not required to print anything, it has already been taken care of. Just implement the function.
1 <= T <= 5
1 <= N (Number of Nodes) <= 10^5
1 <= VALUE of the nodes <= 10^9
Time Limit = 1 sec
Run a breadth-first search and iterate through the levels order-wise and store the sum and number of nodes for every level. In the end, divide the sum of nodes of all the levels by the number of nodes for each level and print the answer.
Run a depth-first search and iterate through the nodes and store the sum and number of nodes for every level. In the end, divide the sum of nodes of all the levels by the number of nodes for each level and print the answer.
Inorder Traversal
Inorder Traversal
Inorder Traversal
Inorder Traversal
Inorder Traversal
Postorder Traversal
Postorder Traversal
Height of Binary Tree
Height of Binary Tree
Height of Binary Tree
Height of Binary Tree
Locked Binary Tree
Maximum Island Size in a Binary Tree