void CInsert(int X,CPosition P,CList L){ CPosition newNode = CursorAlloc(); if (newNode) { cursorSpace[newNode].element=X; cursorSpace[newNode].next=cursorSpace[P].next; cursorSpace[P].next=newNode; } }
List CreateList (void) { List L; L = CursorAlloc(); CursorSpace[L].Element = -1; CursorSpace[L].Next = 0; return L; }
List Create() { List L = CursorAlloc(); if (L == 0) FatalError("Out of space.\n"); else CursorSpace[L].Next = 0; return L; }
Position NewNode(ElementType X) { Position P = CursorAlloc(); if (P == 0) FatalError("Out of Space\n"); else CursorSpace[P].Element = X; return P; }
void Insert(ElementType X, List L, Position P){ Position TmpCell; TmpCell = CursorAlloc(); if(TmpCell == 0){ FatalError("Out of space!!!");; } CursorSpace[TmpCell].Element = X; CursorSpace[TmpCell].Next = CursorSpace[P].Next; CursorSpace[P].Next = TmpCell; }
void Insert (ListElementType X, List L, Position P) { Position TmpCell; TmpCell = CursorAlloc (); if (TmpCell == 0) { fprintf (stderr, "Out Of Space!\n"); exit(1); } CursorSpace[TmpCell].Element = X; CursorSpace[TmpCell].Next = CursorSpace[P].Next; CursorSpace[P].Next = TmpCell; }