Iterates untill queue become empty
while ( q . Count != 0 ) { tmp = q . Peek ( ) ; q . Dequeue ( ) ; if ( tmp . left != null ) q . Enqueue ( tmp . left ) ; if ( tmp . right != null ) q . Enqueue ( tmp . right ) ; } return tmp ; }