Beispiel #1
0
 public ClsNodo(Object dato, String x)
 {
     this.dato = dato;
     Nizq      = null;
     Nder      = null;
     Valor     = val(x);
 }
        public object BuscarDato(string cadena)
        {
            ClsNodo Arb_Aux   = null;
            ClsNodo Arb_Padre = null;
            int     ValCadena = ValorCadena(cadena);

            if (ArbolVacio())
            {
                return(null);
            }
            else
            {
                Arb_Aux = Raiz;
                while (Arb_Aux.getValNodo() != ValCadena)
                {
                    if (Arb_Aux.getValNodo() > ValCadena)
                    {
                        Arb_Padre = Arb_Aux;
                        Arb_Aux   = Arb_Aux.subArbolIzq();
                    }
                    else if (Arb_Aux.getValNodo() < ValCadena)
                    {
                        Arb_Padre = Arb_Aux;
                        Arb_Aux   = Arb_Aux.subArbolDer();
                    }
                }
                return(Arb_Aux.getDato());
            }
        }
        public void AddDato(Object NodoDato, string cadena)
        {
            ClsNodo Arb_Aux   = null;
            ClsNodo Arb_Padre = null;
            ClsNodo NuevoNodo = new ClsNodo(NodoDato, cadena);

            if (ArbolVacio())
            {
                Raiz = new ClsNodo(NodoDato, cadena);
            }
            else
            {
                Arb_Aux = Raiz;
                while (Arb_Aux != null)
                {
                    if (Arb_Aux.getValNodo() > NuevoNodo.getValNodo())
                    {
                        Arb_Padre = Arb_Aux;
                        Arb_Aux   = Arb_Aux.subArbolIzq();
                    }
                    else if (Arb_Aux.getValNodo() < NuevoNodo.getValNodo())
                    {
                        Arb_Padre = Arb_Aux;
                        Arb_Aux   = Arb_Aux.subArbolDer();
                    }
                }

                if (Arb_Padre.getValNodo() > NuevoNodo.getValNodo())
                {
                    Arb_Padre.setRamaIzq(NuevoNodo);
                }
                if (Arb_Padre.getValNodo() < NuevoNodo.getValNodo())
                {
                    Arb_Padre.setRamaDer(NuevoNodo);
                }
            }
        }
Beispiel #4
0
 public void setRamaDer(ClsNodo RamaDer)
 {
     Nder = RamaDer;
 }
Beispiel #5
0
 public void setRamaIzq(ClsNodo RamaIzq)
 {
     Nizq = RamaIzq;
 }
Beispiel #6
0
 public ClsNodo(Object dato)
 {
     this.dato = dato;
     Nder      = null;
 }
 public ClsArbolBinario()
 {
     Raiz = null;
 }