コード例 #1
0
        public void Eliminar(int dato)
        {
            ClassBases anterior = inicio;
            ClassBases actual   = inicio.Siguiente;

            while (anterior != null)
            {
                if (actual.Dato == dato)
                {
                    if (anterior == inicio)
                    {
                        inicio.Siguiente = actual.Siguiente;
                        break;
                    }
                    else if (anterior.Siguiente == null)
                    {
                        anterior = null;
                        break;
                    }
                    else
                    {
                        anterior = actual;
                        break;
                    }
                }
                anterior = actual;
                actual   = actual.Siguiente;
            }
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: saloewe/listas
        private void button1_Click(object sender, EventArgs e)
        {
            ClassBases nuevo;

            nuevo = new ClassBases(Convert.ToInt32(textBox1.Text));
            catalogo.agregar(nuevo);
        }
コード例 #3
0
        private void button1_Click(object sender, EventArgs e)
        {
            ClassBases nuevo;

            nuevo = new ClassBases(Convert.ToInt32(txtCodigo.Text), txtNombre.Text, Convert.ToInt32(txtPrecio.Text));
            catalogo.agregar(nuevo);
        }
コード例 #4
0
ファイル: Estructura.cs プロジェクト: saloewe/listas
 private void agregar(ClassBases nuevo, ClassBases quien)
 {
     if (quien.Siguiente != null)
     {
         agregar(nuevo, quien.Siguiente);
     }
     else
     {
         quien.Siguiente = nuevo;
     }
 }
コード例 #5
0
        public void EliminarUltimo()
        {
            ClassBases anterior = inicio;
            ClassBases actual   = inicio.Siguiente;

            while (actual.Siguiente != null)
            {
                anterior = actual;
                actual   = actual.Siguiente;
            }
            anterior.Siguiente = null;
        }
コード例 #6
0
        public string lista()
        {
            string     res = "";
            ClassBases t   = inicio;

            while (t != null)
            {
                res += t.ToString() + "\r\n";
                t    = t.Siguiente;
            }
            return(res);
        }
コード例 #7
0
        public string buscar(int dato)
        {
            ClassBases actual = inicio;
            string     cadena = "";

            while (actual != null)
            {
                if (actual.Dato == dato)
                {
                    cadena = actual.ToString();
                }
                actual = actual.Siguiente;
            }
            return(cadena);
        }
コード例 #8
0
ファイル: Estructura.cs プロジェクト: saloewe/listas
 public void agregar(ClassBases nuevo)
 {
     if (inicio == null)
     {
         inicio = nuevo;
     }
     else
     {
         //ClassBases t = inicio;
         //while(t.Siguiente != null)
         //    t = t.Siguiente;
         //t.Siguiente = nuevo;
         agregar(nuevo, inicio);
     }
 }
コード例 #9
0
        public void invertirOrden()
        {
            ClassBases q, r, x, y;

            q = inicio;
            while (q.Siguiente != null)
            {
                q = q.Siguiente;
            }
            r                = inicio.Siguiente;
            q.Siguiente      = inicio;
            inicio.Siguiente = null;
            y                = inicio;
            while (r != q)
            {
                x           = r;
                r           = r.Siguiente;
                q.Siguiente = x;
                x.Siguiente = y;
                y           = x;
            }
            inicio = q;
        }
コード例 #10
0
 public void agregar(ClassBases nuevo)
 {
     if (inicio == null)
     {
         inicio = nuevo;
     }
     else
     {
         ClassBases t1, t2;
         t1 = inicio;
         while (t1 != null)
         {
             t2 = t1.Siguiente;
             if (nuevo.Dato <= t1.Dato)
             {
                 nuevo.Siguiente = inicio;
                 inicio          = nuevo;
                 break;
             }
             else if (nuevo.Dato > t1.Dato && t2 == null)
             {
                 t1.Siguiente = nuevo;
                 break;
             }
             else if (t1.Dato < nuevo.Dato && t2.Dato >= nuevo.Dato)
             {
                 t1.Siguiente    = nuevo;
                 nuevo.Siguiente = t2;
                 break;
             }
             else
             {
                 t1 = t1.Siguiente;
             }
         }
     }
 }
コード例 #11
0
 public void EliminarPriimero()
 {
     inicio = inicio.Siguiente;
 }