Para implementar um algoritmo para calcular a profundidade de uma árvore em Java, você pode usar a abordagem de recursão. Aqui está um exemplo de implementação: ```java class Node { int data; Node left, right; public Node(int item) { data = item; left = right = null; } } class BinaryTree { Node root; int calcularProfundidade(Node node) { if (node == null) { return 0; } else { int profundidadeEsquerda = calcularProfundidade(node.left); int profundidadeDireita = calcularProfundidade(node.right); if (profundidadeEsquerda > profundidadeDireita) { return profundidadeEsquerda + 1; } else { return profundidadeDireita + 1; } } } public static void main(String[] args) { BinaryTree tree = new BinaryTree(); tree.root = new Node(1); tree.root.left = new Node(2); tree.root.right = new Node(3); tree.root.left.left = new Node(4); tree.root.left.right = new Node(5); int profundidade = tree.calcularProfundidade(tree.root); System.out.println("A profundidade da árvore é: " + profundidade); } } ``` Neste exemplo, a classe `Node` representa um nó da árvore e a classe `BinaryTree` representa a árvore binária em si. O método `calcularProfundidade` utiliza a recursão para calcular a profundidade da árvore. No método `main`, é criada uma árvore de exemplo e é exibida a profundidade calculada. Espero que isso ajude! Se você tiver alguma dúvida adicional, é só perguntar.
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar