Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- /**************************START PROTOTYPES**************************/
- // Entwerfen Sie einen typedef struct, mit Aufrufnamen, Integer, next Zeiger.
- typedef struct node {
- int data;
- struct node* next;
- } node;
- //Generieren Sie einen head.
- node* head;
- //Node operations
- void append(int data);
- void arrayToLinkedList(int data[], int sizeOfArray);
- void printList();
- void freeList();
- /***************************END PROTOTYPES***************************/
- /******Insert functions********/
- void append(int data) {
- //#include <stdlib.h> dynamischen Speicher für die newNode anlegen.
- node* newNode = malloc(sizeof(node));
- newNode->data = data;
- newNode->next = NULL;
- if (head == NULL) { //head gets its first data
- head = newNode;
- return;
- }
- // Zeiger zum scrollen bis Null und Verkettung erstellen.
- node* zeiger;
- zeiger = head;
- while (zeiger->next != NULL) {
- zeiger = zeiger->next;
- }
- zeiger->next = newNode;
- return;
- }
- void arrayToLinkedList(int data[], int sizeOfArray) {
- // Unser gesamtes Array soll in die linked List auf einmal eingefügt werden.
- for (int i = 0; i < sizeOfArray; i++)
- append(data[i]);
- return;
- }
- /******Helper functions********/
- void freeList() {
- node* tmp = head;
- printf("The time has come\nthe walrus said\nto talk of many things.\n");
- while (head != NULL) {
- tmp = head->next; //->next one gets saved
- free(head);
- head = tmp; //->back into new iteration
- }
- }
- /*******Print functions*********/
- void printList() {
- //Trigger Cutscene Prof Kodierung
- if (head == NULL) {
- return;
- }
- node* zeiger = head;
- while (zeiger != NULL) {
- printf("%d ", zeiger->data);
- if (zeiger->data == 95)printf("\n");//Story content ignore that line
- zeiger = zeiger->next;
- }
- printf("\n\nlinear linked List\n----------------------\n");
- return;
- }
- void main() { // //jetzt folgt aufbau der linked list ++| array/string to linked list ++| void bitShiftListHalf | void printMP3 linked List |
- head = NULL;
- int intString[] = { //shifted // das d von dark fehlt whyever
- 174, 194, 214, 202, 64, 218, 202, 64,
- 234, 224, 64, 210, 220, 230, 210, 200,
- 202, 190, 230, 194, 236, 202, 64, 218,
- 202, 190, 134, 194, 216, 216, 64, 218,
- 242, 64, 220, 194, 218, 202, 64, 194,
- 220, 200, 64, 230, 194, 236, 202, 64,
- 218, 202, 64, 204, 228, 222, 218, 64,
- 232, 208, 202, 64, 200, 194, 228, 214,
- 190, 238, 194, 214, 202, 64, 218, 202,
- 64, 234, 224 };
- int size = sizeof(intString) / sizeof(int);
- //printf(" %d sizeof(Array)\n", size);
- arrayToLinkedList(intString, size);
- // append(3); append(27); append(27); append(27);
- printList();
- freeList();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement