From 26eccbe41f5c903141103f69673d7ce41383bb23 Mon Sep 17 00:00:00 2001 From: psavarmattas Date: Fri, 11 Jun 2021 10:22:53 +0530 Subject: [PATCH] New Programs --- Order Of Programs.md | 4 +- README.md | 2 +- SinglyLinkedList.c | 54 ++++++++++++ SinglyLinkedList.exe | Bin 0 -> 43125 bytes StackUsingLinkedList.c | 182 +++++++++++++++++++++++++++++++++++++++ StackUsingLinkedList.exe | Bin 0 -> 45439 bytes 6 files changed, 240 insertions(+), 2 deletions(-) create mode 100644 SinglyLinkedList.c create mode 100644 SinglyLinkedList.exe create mode 100644 StackUsingLinkedList.c create mode 100644 StackUsingLinkedList.exe diff --git a/Order Of Programs.md b/Order Of Programs.md index 9d4da17..78baa2f 100644 --- a/Order Of Programs.md +++ b/Order Of Programs.md @@ -29,4 +29,6 @@ |27 | BubbleSort.c | BubbleSort.exe | WAP to sort an array using bubble sort | |28 | LinearSearch.c | LinearSearch.exe | WAP to search an element in an array using Linear Search | |29 | BinarySearch.c | BinarySearch.exe | WAP to search an element in an array using Binary Search | -|30 | SelectionSort.c | SelectionSort.exe | WAP to sort an array using selection sort | \ No newline at end of file +|30 | SelectionSort.c | SelectionSort.exe | WAP to sort an array using selection sort | +|31 | StackUsingLinkedList.c | StackUsingLinkedList.exe | WAP to Implement a Stack using Linked List | +|32 | SinglyLinkedList.c | SinglyLinkedList.exe | WAP to implement singly linked lists | \ No newline at end of file diff --git a/README.md b/README.md index a644d07..115e38e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # C Programs For Everybody To Try! -_`Last Updated: April 28' 2021`_ +_`Last Updated: June 11' 2021`_ ## Introduction: diff --git a/SinglyLinkedList.c b/SinglyLinkedList.c new file mode 100644 index 0000000..496ef9f --- /dev/null +++ b/SinglyLinkedList.c @@ -0,0 +1,54 @@ +// WAP to implement singly linked lists + +#include +#include + +struct node { + int data; + struct node *next; +}; + +struct node *head = NULL; +struct node *current = NULL; + +//display the list +void printList() { + + struct node *ptr = head; + + printf("\n[head] =>"); + //start from the beginning + while(ptr != NULL) { + printf(" %d =>",ptr->data); + ptr = ptr->next; + } + + printf(" [null]\n"); +} + +//insert link at the first location +void insert(int data) { + //create a link + struct node *link = (struct node*) malloc(sizeof(struct node)); + + //link->key = key; + link->data = data; + + //point it to old first node + link->next = head; + + //point first to new first node + head = link; +} + +int main() { + insert(10); + insert(20); + insert(30); + insert(1); + insert(40); + insert(56); + + printList(); + return 0; +} diff --git a/SinglyLinkedList.exe b/SinglyLinkedList.exe new file mode 100644 index 0000000000000000000000000000000000000000..b6524e7e85c99ffe77bff6fef638b2bbd18c5dc3 GIT binary patch literal 43125 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 +#include + +struct node +{ + int info; + struct node *ptr; +}*top,*top1,*temp; + +int topelement(); +void push(int data); +void pop(); +void empty(); +void display(); +void destroy(); +void stack_count(); +void create(); + +int count = 0; + +void main() +{ + int no, ch, e; + + printf("\n 1 - Push"); + printf("\n 2 - Pop"); + printf("\n 3 - Top"); + printf("\n 4 - Empty"); + printf("\n 5 - Exit"); + printf("\n 6 - Dipslay"); + printf("\n 7 - Stack Count"); + printf("\n 8 - Destroy stack"); + + create(); + + while (1) + { + printf("\n Enter choice : "); + scanf("%d", &ch); + + switch (ch) + { + case 1: + printf("Enter data : "); + scanf("%d", &no); + push(no); + break; + case 2: + pop(); + break; + case 3: + if (top == NULL) + printf("No elements in stack"); + else + { + e = topelement(); + printf("\n Top element : %d", e); + } + break; + case 4: + empty(); + break; + case 5: + exit(0); + case 6: + display(); + break; + case 7: + stack_count(); + break; + case 8: + destroy(); + break; + default : + printf(" Wrong choice, Please enter correct choice "); + break; + } + } +} + +/* Create empty stack */ +void create() +{ + top = NULL; +} + +/* Count stack elements */ +void stack_count() +{ + printf("\n No. of elements in stack : %d", count); +} + +/* Push data into stack */ +void push(int data) +{ + if (top == NULL) + { + top =(struct node *)malloc(1*sizeof(struct node)); + top->ptr = NULL; + top->info = data; + } + else + { + temp =(struct node *)malloc(1*sizeof(struct node)); + temp->ptr = top; + temp->info = data; + top = temp; + } + count++; +} + +/* Display stack elements */ +void display() +{ + top1 = top; + + if (top1 == NULL) + { + printf("Stack is empty"); + return; + } + + while (top1 != NULL) + { + printf("%d ", top1->info); + top1 = top1->ptr; + } +} + +/* Pop Operation on stack */ +void pop() +{ + top1 = top; + + if (top1 == NULL) + { + printf("\n Error : Trying to pop from empty stack"); + return; + } + else + top1 = top1->ptr; + printf("\n Popped value : %d", top->info); + free(top); + top = top1; + count--; +} + +/* Return top element */ +int topelement() +{ + return(top->info); +} + +/* Check if stack is empty or not */ +void empty() +{ + if (top == NULL) + printf("\n Stack is empty"); + else + printf("\n Stack is not empty with %d elements", count); +} + +/* Destroy entire stack */ +void destroy() +{ + top1 = top; + + while (top1 != NULL) + { + top1 = top->ptr; + free(top); + top = top1; + top1 = top1->ptr; + } + free(top1); + top = NULL; + + printf("\n All stack elements destroyed"); + count = 0; +} \ No newline at end of file diff --git a/StackUsingLinkedList.exe b/StackUsingLinkedList.exe new file mode 100644 index 0000000000000000000000000000000000000000..6633afa07606546823ba2f6e0d1248054b0e8c57 GIT binary patch literal 45439 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 X<)A>I^)NMZj