void CDelete(int X, CList L){ CPosition prevNode = CFindPrevious(X, L); if (prevNode!=-1) { CPosition tempNode=cursorSpace[prevNode].next; cursorSpace[prevNode].next = cursorSpace[tempNode].next; cursorSpace[tempNode].element=0; CursorFree(tempNode); } }
void Delete(ElementType X, List L) { Position pre = FindPrevious(X, L); if (pre) { Position t = CursorSpace[pre].Next; CursorSpace[pre].Next = CursorSpace[t].Next; CursorFree(t); } }
void Delete(ElementType X, List L){ Position P, TmpCell; P = FindPrevious(X, L); if(!IsLast(P, L)){ // Assumption of header use TmpCell = CursorSpace[P].Next; CursorSpace[P].Next = CursorSpace[TmpCell].Next; CursorFree(TmpCell); } }
void DeleteList(List L) { Position p = CursorSpace[L].Next; CursorSpace[L].Next = 0; while ( p ) { Position q = CursorSpace[p].Next; CursorFree(p); p = q; } }
void DeleteList (List L) { Position P, Tmp; P = CursorSpace[L].Next; CursorSpace[L].Next = 0; while (P) { Tmp = CursorSpace[P].Next; CursorFree (P); P = Tmp; } }
void Delete (ListElementType X, List L) { Position P, TmpCell; P = FindPrevious (X, L); if (!IsLast (P, L)) { TmpCell = CursorSpace[P].Next; CursorSpace[P].Next = CursorSpace[TmpCell].Next; CursorFree (TmpCell); } }