Exemplo n.º 1
0
 //Esta función realiza la elminación fisica del nodo, recibe por parametros el index extraido por la
 //Función obtenerIndice
 public void eliminarNodo(int index)
 {
     if (index < 0)
     {
         Console.WriteLine("La versión no existe");
     }
     else
     {
         //Se compara si el nodo es la cabeza, y se quita el enlace para pasarlo al dato siguiente de la lista
         if (index == 0)
         {
             primero = primero.siguiente;
             Console.WriteLine("Registro eliminado con éxito");
         }
         else
         {
             //si el nodo no es la cabeza, se realiza una interación del index recibido y la lista, con el fin
             //de llegar a un nodo anterior al index recibido
             int contador = 0;
             NodoVersiones <T> temporal = primero;
             while (contador < index - 1)
             {
                 temporal = temporal.siguiente;
                 contador++;
             }
             //luego de asignar a temporal el nodo anterior al index recibido, se realiza el enlace
             //al nodo siguiente del siguiente, ingnorando de esta forma el nodo que esta en la posición del index recibido
             temporal.siguiente = temporal.siguiente.siguiente;
             Console.WriteLine("Registro eliminado con éxito");
         }
     }
 }
Exemplo n.º 2
0
        //Método encargado de crear Nodos en la cabeza de la Lista
        public void agregarVersion(T version)
        {
            NodoVersiones <T> nuevaVersion = new NodoVersiones <T>(version);


            nuevaVersion.siguiente = primero;
            primero = nuevaVersion;
        }
Exemplo n.º 3
0
 //Método encargado de crear Nodos en la cabeza de la Lista
 public void agregarVersion(T Nodo, string categoria)
 {
     if (categoria.Equals("branch"))
     {
         int i = 0;
         nuevaRama           = new NodoRamas <T>(Nodo);
         nuevaRama.siguiente = primeroRama;
         primeroRama         = nuevaRama;
         nuevaRama.enlace    = null;
         i++;
     }
     else
     {
         NodoVersiones <T> nuevaVersion = new NodoVersiones <T>(Nodo);
         nuevaVersion.siguiente = primero;
         primero          = nuevaVersion;
         nuevaRama.enlace = (NodoRamas <T>)nuevaVersion;
     }
 }
 public NodoVersiones()
 {
     this.dato      = default;
     this.siguiente = null;
 }
 public NodoVersiones(T dato)
 {
     this.dato      = dato;
     this.siguiente = null;
 }
Exemplo n.º 6
0
 public NodoRamas(NodoVersiones <T> Version)
 {
     this.Version = Version;
 }
Exemplo n.º 7
0
 public Nodos()
 {
     primero  = null;
     actual   = null;
     anterior = null;
 }