Hello
I know of only one method of visiting the elements on one level of a tree. This method is not very efficient. This is the way I do it(PHP implementation):
Code:
private function NextNode(&$node,$curlevel,$desiredlevel,&$nodesnr=null)
        {
            if($node == null)
                return;
            $curlevel++;

            if($curlevel == $desiredlevel)
            {
                $this->Visit($node);
                if($nodesnr!==null)
                    $nodesnr++;
            }

            $this->NextNode($node->left,$curlevel,$desiredlevel,$nodesnr);
            $this->NextNode($node->right,$curlevel,$desiredlevel,$nodesnr);
        }
I travese all the nodes of the tree in depth(inorder) and I check if teh level is equal to my desired level and if so I visit that node. I also keep track on the number of nodes but that is not relevant to the question.
This is inefficient because it goes throgh the entire tree.

Does anyone know of a better(more efficient) sollution?
Thank you in advance