Thursday, August 21, 2008

Write a C program to remove duplicates from a sorted linked list.

void RemoveDuplicatesFromSortedList(NODE *pHead)
{
if (NULL == pHead)
return;

NODE *pCurrent = pHead;

while (pCurrent->pNext)
{
NODE *pTemp = pCurrent->pNext;

if (pCurrent->nValue == pTemp->nValue) //Is duplicate?
{
pCurrent->pNext = pTemp->pNext;
free(pTemp);
}
else
{
pCurrent = pCurrent->pNext;
}
}
}

0 comments: