Você está na página 1de 1

status remove_duplicatas(lista *p_L, lista *p_R)

{
lista auxi, auxj, ant_auxj, tmpj;
lista ultimo_p_R, auxR;
*p_R = NULL;
ultimo_p_R = *p_R;
if (lista_vazia(*p_L) == TRUE)
{
return OK;
}
for (auxi = *p_L; auxi != NULL; auxi = POST(auxi))
{
ant_auxj = auxi;
for(auxj = POST(auxi); auxj != NULL; auxj = POST(auxj))
{
if (CHAVE(auxj) == CHAVE(auxi))
{
tmpj = auxj;
POST(ant_auxj) = POST(tmpj);
if (lista_vazia(*p_R))
{
*p_R = auxj;
ultimo_p_R = *p_R;
}
else
{
for(auxR = *p_R; auxR != ultimo_p_R; auxR = POST
(auxR));
POST(auxR) = auxj;
ultimo_p_R = auxj;
}
}
else
{
ant_auxj = POST(ant_auxj);
}
}
}
return OK:
}

Você também pode gostar