Untitled
// 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); } } } } }
Leave a Comment