Untitled
unknown
plain_text
10 months ago
1.3 kB
17
Indexable
// declare "struct Node *delTemp;" globally
void deleteNodeR(int loc, int currLoc)
{
if (currLoc <= loc)
{
if (pHead)
{
if (currLoc == 0)
{
delTemp = pHead;
}
if (loc == 0)
{
if (pHead == pTail)
{
pHead = pTail = NULL;
}
else
{
pHead = pHead->pNext;
pHead->pPrev = NULL;
}
free(delTemp);
}
else
{
if (currLoc == loc)
{
if (delTemp == pTail)
{
pTail = pTail->pPrev;
pTail->pNext = NULL;
}
else if (delTemp)
{
delTemp->pPrev->pNext = delTemp->pNext;
delTemp->pNext->pPrev = delTemp->pPrev;
}
}
else
{
delTemp = delTemp->pNext;
deleteNodeR(loc, currLoc + 1);
}
}
}
}
}
Editor is loading...
Leave a Comment