Beispiel #1
0
 /// <summary>
 /// Metodo para añadir un nodo a la lista
 /// Los nuevos nodos se añaden al final de la lista.
 /// </summary>
 public void Add(string texto)
 {
     if (count <= 0)
     {
         nodo = new Nodo(texto);
         nodo_ini = nodo ;
     }
     else
     {
         while (nodo.next != nodo)
             nodo = nodo.next;
         nodo.next = new Nodo(texto);
         nodo_fin = nodo.next;
     }
     count++;
 }
Beispiel #2
0
 /// <summary>
 /// Podrás preguntarle a la lista si contiene un string concreto. Si es así, devolverá el nodo que contiene el string.
 /// </summary>
 /// <param name="texto"></param>
 /// <returns>
 /// El nodo que contiene el string
 /// </returns>
 public Nodo Find(string texto)
 {
     if (count == 1)
     {
         if (nodo.Contains(texto))
         {
             return nodo;
         }
     }
     if (count > 1)
     {
         nodo = nodo_ini;
         while (nodo.next != nodo)
         {
             if (nodo.next.Contains(texto))
             {
                 return nodo.next;
             }
             nodo = nodo.next;
         }
         return new Nodo(); // nodo con valores null y string empty
     }
     else
         return new Nodo();// nodo con valores null y string empty
 }
Beispiel #3
0
 /// <summary>        
 /// Constructor lista enlazada
 /// </summary>
 public MiLista()
 {
     nodo = null;
     count = 0;
 }
Beispiel #4
0
 /// <summary>
 /// Podrás eliminar un nodo cualquiera de la lista.
 /// </summary>
 /// <param name="texto"></param>
 /// <returns>
 /// true si se ha podido borrar
 /// false en caso contrario
 /// </returns>
 public Boolean Delete(string texto)
 {
     if (count > 0)
     {
         nodo = Find(texto);
         if (nodo.texto == String.Empty) // es decir no lo he encontrado
         {
             return false;
         }
         else
         {
             nodo.Dispose(); // la lista se rompe porque no es doblemente enlazada.
             return true;
         }
     }
     else
     {
         return false;
     }
 }