Beispiel #1
0
 public static void AdicionarNodoInicioLista(Huesped pHuespedes)
 {
     if (cabecera != null)
     {   //1><1
         cabecera.SetAnterior(pHuespedes);
         pHuespedes.SetSiguiente(cabecera);
         cabecera = pHuespedes;
     }
     //1><1>
     else
     {
         cabecera = pHuespedes;
     }
 }
Beispiel #2
0
        public static void AdicionarNodoPosicionLista(Huesped pHuesped, int pos)
        {
            Huesped tem  = cabecera;
            int     cont = 0;

            pos--;

            if (cabecera == null)
            {
                throw new Exception("El valor de pos = " + (pos + 1) + ", es mayor que el tamaño de la lista " + Environment.NewLine + "El estudiante no puede ser agregado" + Environment.NewLine + "Revise la lista y la posición que quiere agregar e intente de nuevo");
            }

            if (pos == 0)
            {
                pHuesped.SetSiguiente(cabecera);
                cabecera = pHuesped;
                return;
            }

            while (tem != null)
            {
                if (cont == pos)
                {
                    break;
                }

                tem = tem.GetSiguiente();
                cont++;
            }

            if (cont < pos || tem == null)
            {
                throw new Exception("El valor de pos = " + (pos + 1) + ", es mayor al tamaño de la lista! " + Environment.NewLine + "Estudiante NO adicionado!");
            }

            // pHuespedes.SetSiguiente(tem.GetSiguiente());

            // tem.SetSiguiente(pHuespedes);
            //<1><1><1><1>
            tem.GetAnterior().SetSiguiente(pHuesped);
            pHuesped.SetAnterior(tem.GetAnterior());
            pHuesped.SetSiguiente(tem);
            tem.SetAnterior(pHuesped);
        }
Beispiel #3
0
        public static void EliminarFinal()
        {
            Huesped temp = cabecera;

            // 1><1><1>
            if (cabecera.GetSiguiente() == null)
            {
                cabecera = null;
            }
            else
            {
                while (temp.GetSiguiente() != null)
                {
                    temp = temp.GetSiguiente();
                }
                temp.GetAnterior().SetSiguiente(null);
                temp.SetAnterior(null);
            }
        }
Beispiel #4
0
        public static void AdicionarNodoFinalLista(Huesped pHuesped)
        {
            if (cabecera == null)
            {
                //pEst.setSgte(null);
                cabecera = pHuesped;
            }
            else
            {
                Huesped temp = cabecera;


                while (temp.GetSiguiente() != null)
                {
                    temp = temp.GetSiguiente();
                }

                //<1><1
                temp.SetSiguiente(pHuesped);
                pHuesped.SetAnterior(temp);
            }
        }