void cola :: vacia(){
	
	while(!es_vacia()){
        desencolar();
    }
	return;
}
//Destructor
cola :: ~cola (void){
    ptr_nodo aux;
	
	while(!es_vacia()){
        desencolar();
    }
}
Exemplo n.º 3
0
void anadir_derecha (ELEMENTO e, pLISTA pL)
/**********************************************************************/
{	
	if (es_vacia (*pL))
	   crear_unitaria (pL, e); 
	else
	{
		pL->ultimo->siguiente = (pNODO) malloc (sizeof (NODO)); 
		pL->ultimo = pL->ultimo->siguiente; 
		pL->ultimo->dato = e; 
		pL->ultimo->siguiente = NULL; 
	   pL->elementos++; 
	}
}
Exemplo n.º 4
0
void anadir_derecha_copiando (ELEMENTO e, pLISTA pL, int tamano)
/**********************************************************************/
{	
	if (es_vacia (*pL))
	   crear_unitaria_copiando (pL, e, tamano); 
	else
	{
		pL->ultimo->siguiente = (pNODO) malloc (sizeof (NODO)); 
		pL->ultimo = pL->ultimo->siguiente; 
		pL->ultimo->dato = (void *) malloc (tamano); 
		memcpy (pL->ultimo->dato, e, tamano); 
		pL->ultimo->siguiente = NULL; 
	    pL->elementos++; 
	}
}
Exemplo n.º 5
0
void anadir_izquierda (ELEMENTO e, pLISTA pL)
/**********************************************************************/
{
	if (es_vacia (*pL))
	   crear_unitaria (pL, e); 
	else
	{
	    pNODO nuevoNodo; 

		nuevoNodo = (pNODO) malloc (sizeof (NODO)); 
		nuevoNodo->dato = e; 
		nuevoNodo->siguiente = pL->primero; 
		pL->primero = nuevoNodo; 
	    pL->elementos++; 
	}
}
Exemplo n.º 6
0
void anadir_izquierda_copiando (ELEMENTO e, pLISTA pL, int tamano)
/**********************************************************************/
{
	if (es_vacia (*pL))
	   crear_unitaria_copiando (pL, e, tamano); 
	else
	{
        pNODO nuevoNodo; 

		nuevoNodo = (pNODO) malloc (sizeof (NODO)); 
		nuevoNodo->dato = (void *) malloc (tamano); 
		memcpy (nuevoNodo->dato, e, tamano); 
		nuevoNodo->siguiente = pL->primero; 
		pL->primero = nuevoNodo; 
	    pL->elementos++; 
	}
}
Exemplo n.º 7
0
void concatenar (pLISTA pL1, LISTA l2)
/**********************************************************************/
{	
	if (l2.elementos != 0)
	{
		if (es_vacia(*pL1))
		{
			*pL1 = l2; 
		}
		else
		{
			pL1->ultimo->siguiente = l2.primero; 
			pL1->ultimo = l2.ultimo; 
			pL1->elementos = pL1->elementos+l2.elementos; 
		}
	}

}