CODIGO DE ARBOLES
class Nodo {
int valor;
Nodo izquierdo;
Nodo derecho;
public Nodo(int item) {
valor = item;
izquierdo = derecho = null;
}
}
class Arbol {
Nodo raiz;
public Arbol() {
raiz = null;
}
// Método para insertar un nuevo nodo en el árbol
public void insertar(int valor) {
raiz = insertarNodo(raiz, valor);
}
// Método auxiliar recursivo para insertar un nuevo nodo
private Nodo insertarNodo(Nodo nodo, int valor) {
if (nodo == null) {
nodo = new Nodo(valor);
return nodo;
}
if (valor < nodo.valor)
nodo.izquierdo = insertarNodo(nodo.izquierdo, valor);
else if (valor > nodo.valor)
nodo.derecho = insertarNodo(nodo.derecho, valor);
return nodo;
}
// Método para realizar un recorrido en orden del árbol (izquierda, raíz, derecha)
public void inOrden(Nodo nodo) {
if (nodo != null) {
inOrden(nodo.izquierdo);
System.out.print(nodo.valor + " ");
inOrden(nodo.derecho);
}
}
}
public class Main {
public static void main(String[] args) {
Arbol arbol = new Arbol();
arbol.insertar(50);
arbol.insertar(30);
arbol.insertar(70);
arbol.insertar(20);
arbol.insertar(40);
arbol.insertar(60);
arbol.insertar(80);
System.out.println("Recorrido en orden del árbol:");
arbol.inOrden(arbol.raiz);
}
}
Comentarios
Publicar un comentario