Recursivo y no recursivo para obtener el número de nodos de árbol binario java

Recursividad

int sizeOfBinaryTree(BinaryTreeNode root){
    
    
  if(root == null) return 0;
  else
    return (sizeOfBinaryTree(root.getLeft())+1+sizeOfBinaryTree(root.getRight()));
}

No recursivo

int sizeOfBinaryTreeUsingLevelOrder(BinaryTreeNode root){
    
    
  BinaryTreeNode temp;
  llQueue q.= new llQueue();
  int count = 0;
  if(root == null) return 0;
  q.enQueue(root);
  while(q.isNotEmpty()){
    
    
    temp = q.deQueue();
    count++;
    if(temp.getleft() != null){
    
    
      q.enQueue(temp.getLeft());
    }
    if(temp.getRight() != null){
    
    
      q.enQueue(temp.getRight());
    }
  }
  q.deleteQueue();
  return count;

}

Supongo que te gusta

Origin blog.csdn.net/weixin_37632716/article/details/110203542
Recomendado
Clasificación