public int BuscarMan() { ArbolBinarioBusqueda ArbolActual = this; while (!ArbolActual.Raiz.HijoDerecha.Vacio()) { ArbolActual = ArbolActual.Raiz.HijoDerecha; } int Devuelve = ArbolActual.Raiz.Dato; ArbolActual.Raiz = null; return(Devuelve); }
public int BuscarMin() { ArbolBinarioBusqueda ArbolActual = this; while (!ArbolActual.Raiz.HijoIzquierda.Vacio()) { ArbolActual = ArbolActual.Raiz.HijoIzquierda; } int Devuelvo = ArbolActual.Raiz.Dato; ArbolActual.Raiz = null; return(Devuelvo); }
protected void Page_Load(object sender, EventArgs e) { ArbolBinarioBusqueda a = new ArbolBinarioBusqueda(); a.InsertarNodo(1); a.InsertarNodo(2); a.InsertarNodo(3); a.InsertarNodo(4); a.InsertarNodo(5); a.AlturaArbol(); a.InOrden(); a.PosOrden(); a.PreOrden(); }
public void EliminarNodo(int Valor) { ArbolBinarioBusqueda NodoEliminar = BuscarNodo(Valor); if (!NodoEliminar.Vacio()) { if (NodoEliminar.Hojas()) { NodoEliminar.Raiz = null; } } else { if (!NodoEliminar.Raiz.HijoIzquierda.Vacio() && !NodoEliminar.Raiz.HijoDerecha.Vacio()) { NodoEliminar.Raiz.Dato = NodoEliminar.Raiz.HijoDerecha.BuscarMin(); } else { if (NodoEliminar.Raiz.HijoIzquierda.Vacio()) { NodoEliminar.Raiz.Dato = NodoEliminar.Raiz.HijoDerecha.BuscarMin(); } else { if (NodoEliminar.Raiz.HijoIzquierda.Vacio()) { NodoEliminar.Raiz = NodoEliminar.Raiz.HijoDerecha.Raiz; } else { NodoEliminar.Raiz = NodoEliminar.Raiz.HijoIzquierda.Raiz; } } } } }
public ArbolBinarioBusqueda BuscarNodo(int Valor) { ArbolBinarioBusqueda ArbolBusqueda = null; if (!Vacio()) { if (Valor == Raiz.Dato) { return(this); } else { if (Valor < Raiz.Dato) { ArbolBusqueda = Raiz.HijoIzquierda.BuscarNodo(Valor); } else { ArbolBusqueda = Raiz.HijoDerecha.BuscarNodo(Valor); } } } return(ArbolBusqueda); }
public void InicializarNodoArbol() { HijoDerecha = null; HijoIzquierda = null; Dato = 0; }