int main(){ Element* head = (Element*)malloc(sizeof(Element)); memset(head, 0, sizeof(Element)); head->data = 0; head->next = NULL; insertHead(&head, 1); insertHead(&head, 2); insertHead(&head, 3); // Test to insert in front of head insertAfter(&head, NULL, 4); insertAfter(&head, head, 5); printHeadData(&head); printLinkedList(&head); // deleteHead(&head); // deleteHead(&head); // deleteHead(&head); // deleteHead(&head); Element* select = findMToLastElement(&head, 2); printf("lastMElem: %d\n", select->data); deleteHead(&head); deleteList(&head); printHeadData(&head); printLinkedList(&head); return 0; }
int deleteMethod(const char *filename, int socket) { char header[128]; //Malloc on this char content[N]; // Malloc on this if (access(filename, F_OK) == -1) { notFoundHead(header, 1); strcpy(content, header); strcat(content, "\nDocument not found!\n\0"); if (write(socket, content, strlen(content)) < 0) { perror("Error in write()."); return -1; } return 0; } else { if (unlink(filename) < 0) { notFoundHead(header, 1); strcpy(content, header); strcat(content, "\nDocument not found!\n\0"); if (write(socket, content, strlen(content)) < 0) { perror("Error in write()."); return -1; } return 0; } else { deleteHead(header); if (write(socket, header, strlen(header)) < 0) { perror("Error in write()."); return -1; } } } return 0; }
/** * @param head: The first node of linked list. * @return: head node */ ListNode * deleteDuplicates(ListNode *head) { // write your code here if (head == NULL || head->next == NULL) return head; //消除头部重复的元素 head = deleteHead(head); if (head == NULL || head->next == NULL) return head; //消除中间重复的元素 ListNode *temp = head; ListNode *temp1 = head->next; while (temp1 != NULL && temp1->next != NULL) { if (temp1->val == temp1->next->val) { temp->next = NULL; temp->next = deleteHead(temp1); } temp = temp->next; temp1 = NULL; if (temp != NULL) temp1 = temp->next; } return head; }
int main(){ InitStack(&stack0); InitStack(&stack1); int origin[] = {1,2,3,4,5,6}; int length = sizeof(origin)/sizeof(int); int i=0; int testNum = 3; for(i=0;i<testNum;i++){ appendTail(origin[i]); } for(i=0;i<testNum;i++){ printf("%d",deleteHead()); } for(i=testNum;i<length;i++){ appendTail(origin[i]); } for(i=testNum;i<length;i++){ printf("%d",deleteHead()); } }