/// <summary> /// Inserta un nodo delante del nodo que contiene el dato ingresado ("Afecta el orden por id de la lista"). /// </summary> /// <param name="posicion"></param> public void Insertar(int posicion, CAnimal mascota) { CNodo encontrado = Buscar(posicion); if (encontrado != null) { CNodo nuevo = new CNodo(); nuevo.Id = IncrementaId(); nuevo.Mascota = mascota; nuevo.Siguiente = encontrado.Siguiente; encontrado.Siguiente = nuevo; } }
/// <summary> /// Busca el nodo que contiene el id ingresado. /// </summary> /// <param name="id">Id a buscar e la lista.</param> /// <returns>Retorna el nodo que contiene el id ingresado.</returns> public CNodo Buscar(int id) { trabajo = ancla; while (trabajo.Siguiente != null) { trabajo = trabajo.Siguiente; if (trabajo.Id == id) { return(trabajo); } } return(null); }
/// <summary> /// Borra un nodo de la lista encaso de existir el dato ingresado. /// </summary> /// <param name="id">Dato del nodo a eliminar.</param> public void Borrar(int id) { trabajo = ancla; CNodo encontrado = Buscar(id); if (encontrado != null) { CNodo anterior = BuscarAnterior(id); anterior.Siguiente = encontrado.Siguiente; encontrado.Siguiente = null; } }
public int CantidadNododos() { int cantidad = 0; trabajo2 = ancla; while (trabajo2 != null) { trabajo2 = trabajo2.Siguiente; cantidad++; } return(cantidad); }
/// <summary> /// Adiciona un nodo al final de la lista /// </summary> /// <param name="mascota">Animal que contendra el nodo a adicionar.</param> public void Adicionar(CAnimal mascota) { trabajo = ancla; while (trabajo.Siguiente != null) { trabajo = trabajo.Siguiente; } CNodo nuevo = new CNodo(); nuevo.Id = IncrementaId(); nuevo.Mascota = mascota; trabajo.Siguiente = nuevo; }
//FIXME: No esta funcionando. public CAnimal MuestraAnimal(int id) { trabajo = ancla; while (trabajo.Siguiente != null) { trabajo = trabajo.Siguiente; if (id == trabajo.Id) { CAnimal encontrado = trabajo.Mascota; return(encontrado); } } return(null); }
//FIXME: Consulta que es esto. public int this[int indice] { get { trabajo = ObtenerPorIndice(indice); return(trabajo.Id); } set { trabajo = ObtenerPorIndice(indice); if (trabajo != null) { trabajo.Id = value; } } }
/// <summary> /// Busca el indice en el cual se encuantre actualmente el id ingresado, de no encontrarse retorna -1. /// </summary> /// <param name="id">Id del cual se requiere su indice</param> /// <returns></returns> public int BuscaIndice(int idBuscar) { trabajo = ancla; int indice = -1; while (trabajo.Siguiente != null) { trabajo = trabajo.Siguiente; indice++; Console.WriteLine("id ->" + trabajo.Id + " indice->" + indice); if (trabajo.Id == idBuscar) { return(indice); } } return(-1); }
private int id; //Nos servira ara saber el numero de registros ingresados a la lista. public CLista() { ancla = new CNodo(); ancla.Siguiente = null; }