0% encontró este documento útil (0 votos)
32 vistas4 páginas

Estructura de Datos Java

codigo para el arbol binario

Cargado por

ivon garzon
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
32 vistas4 páginas

Estructura de Datos Java

codigo para el arbol binario

Cargado por

ivon garzon
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

mport [Link].

Scanner;

// Clase que representa un nodo en un árbol binario

class Nodo {

int dato;

Nodo izquierda;

Nodo derecha;

// Constructor que inicializa un nodo con un valor dado

public Nodo(int dato) {

[Link] = dato;

[Link] = null;

[Link] = null;

// Clase que representa un árbol binario

class ArbolBinario {

private Nodo raiz; // Raíz del árbol

// Constructor que inicializa el árbol sin ningún nodo

public ArbolBinario() {

raiz = null;

// Método para insertar un nuevo nodo en el árbol


public void insertar(int dato) {

raiz = insertarRec(raiz, dato);

// Método privado para insertar recursivamente un nodo en el árbol

private Nodo insertarRec(Nodo nodo, int dato) {

if (nodo == null) {

return new Nodo(dato);

if (dato < [Link]) {

[Link] = insertarRec([Link], dato);

} else if (dato > [Link]) {

[Link] = insertarRec([Link], dato);

return nodo;

// Método para buscar un valor en el árbol

public boolean buscar(int valor) {

return buscarRec(raiz, valor);

// Método privado para buscar recursivamente un valor en el árbol

private boolean buscarRec(Nodo nodo, int valor) {


if (nodo == null) {

return false;

if ([Link] == valor) {

return true;

} else if (valor < [Link]) {

return buscarRec([Link], valor);

} else {

return buscarRec([Link], valor);

// Clase principal que maneja la entrada y salida de datos

public class Main {

public static void main(String[] args) {

Scanner scanner = new Scanner([Link]);

[Link]("Ingrese el tamaño del arreglo: ");

int n = [Link]();

int[] arreglo = new int[n];

[Link]("Ingrese los valores del arreglo:");

for (int i = 0; i < n; i++) {

arreglo[i] = [Link]();

}
ArbolBinario arbol = new ArbolBinario();

for (int valor : arreglo) {

[Link](valor);

[Link]("Ingrese un número para buscar en el árbol: ");

int numeroBuscado = [Link]();

boolean encontrado = [Link](numeroBuscado);

if (encontrado) {

[Link]("El número está en el árbol.");

} else {

[Link]("El número no está en el árbol.");

También podría gustarte