English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriales básicos de Java

Java 流程控制

Java 数组

Java 面向对象(I)

Java 面向对象(II)

Java 面向对象(III)

Manejo de excepciones en Java

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java程序来计算树中叶节点的数量

    Java 实例大全

在此示例中,我们将学习使用Java计算树中叶节点的数量。

示例:Java程序来计算树中叶节点的数量

class Node {
  int item;
  Node left, right;
  public Node(int key) {
  item = key;
  left = right = null;
  }
}
class Main {
  //树根
  Node root;
  Main() {
  root = null;
  }
  //计算叶节点的方法
  public static int countLeaf(Node node) {
    if(node == null) {
      return 0;
    }
    //如果节点的左、右为空
    //它是叶节点
    if (node.left == null && node.right == null) {
      return 1;
    }
    else {
      return countLeaf(node.left) + countLeaf(node.right);
    }
  }
  public static void main(String[] args) {
    //创建一个Tree对象
    Main tree = new Main();
    //创建树的节点
    tree.root = new Node(5);
    tree.root.left = new Node(3);
    tree.root.right = new Node(8);
    //Crear el subnodo del nodo izquierdo
    tree.root.left.left = new Node(2);
    tree.root.left.right = new Node(4);
    //Crear el subnodo del nodo derecho
    tree.root.right.left = new Node(7);
    tree.root.right.right = new Node(9);
    //Llamar al método para calcular el número de nodos hoja
    int leafNodes = countLeaf(tree.root);
    System.out.println("Total de nodos hoja = "); + leafNodes);
  }
}

Resultado de salida

Total de nodos hoja = 4
Calcular el número de nodos hoja

En los ejemplos anteriores, ya hemos implementado la estructura de datos de árboles en Java. Aquí, utilizamos la recursión para calcular el número de nodos hoja en el árbol.

Recomendado

Java 实例大全