Segue abaixo um exemplo de código em Java que recebe cinco números reais do usuário e os insere em uma árvore binária de busca, em seguida, imprime os números em ordem crescente: ``` import java.util.Scanner; class No { double valor; No esquerda, direita; public No(double valor) { this.valor = valor; esquerda = null; direita = null; } } class ArvoreBinariaBusca { No raiz; public ArvoreBinariaBusca() { raiz = null; } public void inserir(double valor) { raiz = inserirRecursivo(raiz, valor); } private No inserirRecursivo(No no, double valor) { if (no == null) { no = new No(valor); return no; } if (valor < no.valor) { no.esquerda = inserirRecursivo(no.esquerda, valor); } else if (valor > no.valor) { no.direita = inserirRecursivo(no.direita, valor); } return no; } public void emOrdem() { emOrdemRecursivo(raiz); } private void emOrdemRecursivo(No no) { if (no != null) { emOrdemRecursivo(no.esquerda); System.out.print(no.valor + " "); emOrdemRecursivo(no.direita); } } } public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); ArvoreBinariaBusca arvore = new ArvoreBinariaBusca(); for (int i = 0; i < 5; i++) { System.out.print("Digite o " + (i + 1) + "º número: "); double numero = sc.nextDouble(); arvore.inserir(numero); } System.out.print("Números em ordem crescente: "); arvore.emOrdem(); } } ``` Espero ter ajudado!
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar