Программа на Java для подсчета количества листовых узлов в дереве

В этом примере мы научимся подсчитывать количество листовых узлов в дереве с помощью Java.

Чтобы понять этот пример, вы должны знать следующие темы программирования Java:

  • Класс и объекты Java
  • Методы Java

Пример: программа на Java для подсчета количества листовых узлов в дереве

 class Node ( int item; Node left, right; public Node(int key) ( item = key; left = right = null; ) ) class Main ( // root of Tree Node root; Main() ( root = null; ) // method to count leaf nodes public static int countLeaf(Node node) ( if(node == null) ( return 0; ) // if left and right of the node is null // it is leaf node if (node.left == null && node.right == null) ( return 1; ) else ( return countLeaf(node.left) + countLeaf(node.right); ) ) public static void main(String() args) ( // create an object of Tree Main tree = new Main(); // create nodes of tree tree.root = new Node(5); tree.root.left = new Node(3); tree.root.right = new Node(8); // create child nodes of left child tree.root.left.left = new Node(2); tree.root.left.right = new Node(4); // create child nodes of right child tree.root.right.left = new Node(7); tree.root.right.right = new Node(9); // call method to count leaf nodes int leafNodes = countLeaf(tree.root); System.out.println("Total Leaf Nodes = " + leafNodes); ) )

Вывод

 Всего листовых узлов = 4
Подсчитайте количество конечных узлов

В приведенном выше примере мы реализовали древовидную структуру данных на Java. Здесь мы используем рекурсию для подсчета количества листовых узлов в дереве.

Рекомендуемая литература :

  • Древовидная структура данных
  • Реализация двоичного дерева в Java

Интересные статьи...