Encontre todos os nós em uma árvore binária em um nível específico (Interview Query)

Quero dizer, em um nível específico, não até esse nível específico. Alguém poderia verificar meu algoritmo BFS modificado? (a maioria é tirada da Wikipedia)

Queue levelorder(root, levelRequested){
      int currentLevel = 0;
      q = empty queue
      q.enqueue(root)
      while not q.empty do{
           if(currentLevel==levelRequested)
                 return q;
           node := q.dequeue()
           visit(node)
           if(node.left!=null || node.right!=null){
                 currentLevel++;
                 if node.left ≠ null
                       q.enqueue(node.left)
                 if node.right ≠ null
                       q.enqueue(node.right)
           }
      }
}

questionAnswers(2)

yourAnswerToTheQuestion