int main() { LIST *list1, *list2; list1=createList(10); list2=createList(10); int j; for(j=0; j<12; j++) insertAtHead(list1,j+1); printList(list1); // for(j=0; j<12; j++) // insertAtTail(list2,j+1); // printList(list2); deleteFromHead(list1); deleteFromHead(list1); deleteFromHead(list1); deleteFromHead(list1); printList(list1); for(j=0; j<6; j++) insertAtTail(list1,99); printList(list1); printf("\n"); return 0; }
int main() { int i,size=15; ElementList E; Element e1; e1.id=2000; e1.regstatus=0; for(i=0;i<size;i++) { E[i].id=i; E[i].regstatus=(i%3); //0= Success, 1 = Conflict, 2 = Deny } // R containing All (size number) registered student records ListHead ks, kd, kc; ks=createList(); kd=createList(); kc=createList(); for (i = 0; i < size; i++) { if (E[i].regstatus == 0) { insertAtTail (E[i], ks); } else if (E[i].regstatus == 1) { insertAtHead (E[i], kc); } else { insertAtHead (E[i], kd); } } printf("\n\nSUCCESS LIST\n"); printList(ks); printf("\n\nCONFLICT LIST\n"); printList(kc); printf("\n\nDENY LIST\n"); printList(kd); deleteFromHead(ks); deleteFromTail(kc); deleteFromHead(kd); printf("\n\nSUCCESS LIST After Deletion\n"); printList(ks); printf("\n\nCONFLICT LIST After Deletion\n"); printList(kc); printf("\n\nDENY LIST After Deletion\n"); printList(kd); }
void DoubleLinkedList<datType>::deleteAtPosition(int position) { if (_size == 0) { cout << "(DoubleLinkedList) List is Empty" << endl; return; } if (position > _size) { cout << "(DoubleLinkedList) Invalid Position " << endl; return; } //If position == size means delete at the tail if (position == _size) { deleteFromTail(); return; } //If the size is 1 and the position is also 1 just clear the list if (position == 1) { deleteFromHead(); return; } int currentPosition = 1; dlNode<datType> *iterator = head; while (iterator->nextNode != NULL && currentPosition < position) { iterator = iterator->nextNode; currentPosition++; } //if we are here we found the position so delete and do assign dlNode<datType> *nodeToDelete = iterator; (iterator->prevNode)->nextNode = nodeToDelete->nextNode; (iterator->nextNode)->prevNode = nodeToDelete->prevNode; delete nodeToDelete; _size--; }
int main() { LIST *list1; list1=createList(10); insertAtHead(list1,1); insertAtHead(list1,2); printList(list1); insertAtTail(list1,2); insertAtTail(list1,3); insertAtTail(list1,4); insertAtTail(list1,5); insertAtTail(list1,6); insertAtTail(list1,7); insertAtTail(list1,8); insertAtTail(list1,9); insertAtTail(list1,10); insertAtTail(list1,11); printList(list1); int res, j; for(j=0; j<12; j++) { res=deleteFromHead(list1); if(res>0) printf("\nDeleted:\t%d",res); } printList(list1); for(j=0; j<12; j++) { insertAtHead(list1,j+1); } printList(list1); for(j=0; j<12; j++) { insertAtTail(list1,j+1); } printList(list1); printf("\nDeleted:\t%d",deleteFromHead(list1)); printf("\nDeleted:\t%d",deleteFromHead(list1)); printf("\nDeleted:\t%d",deleteFromHead(list1)); printList(list1); printf("\nDeleted:\t%d",deleteFromTail(list1)); printf("\nDeleted:\t%d",deleteFromTail(list1)); printf("\nDeleted:\t%d",deleteFromTail(list1)); printList(list1); for(j=0; j<12; j++) { res=deleteFromTail(list1); if(res>0) printf("\nDeleted:\t%d",res); } printList(list1); for(j=0; j<12; j++) { insertAtTail(list1,j+1); } printList(list1); printf("\n"); return 0; }