This repository contains C implementations of various data structures and algorithms. These programs were part of the coursework for the 2nd year, 3rd semester, batch 2023-27. They cover fundamental data structures and their applications.
student_management.c: Defines astudentstructure (name, USN, age, CGPA), creates an array of students, displays them, and filters students based on a user-provided CGPA. (Coursework Exercise)
tower_of_hanoi.c: Solves the Tower of Hanoi puzzle using recursion. (Coursework Exercise)fibonacci.c: Generates the Fibonacci series using recursion. (Coursework Exercise)
stack_array.c: Implements a stack of integers using an array with a maximum size (MAX). Provides a menu-driven interface for push, pop, palindrome check, overflow/underflow demonstration, display, and exit. (Coursework Exercise)
infix_to_postfix.c: Converts a valid parenthesized infix arithmetic expression (single-character operands and+,-,*,/operators) to postfix using a stack. (Coursework Exercise)
postfix_evaluation.c: Evaluates a valid postfix expression (single-digit operands and+,-,*,/operators) using a stack. (Coursework Exercise)
process_scheduling.c: Simulates process scheduling in an operating system using a queue (FIFO). Provides options to add, remove, and display process IDs. (Coursework Exercise)
circular_queue_array.c: Implements a circular queue of characters using an array. Provides a menu-driven interface for insert, delete, full/empty checks, display, and exit. (Coursework Exercise)
singly_linked_list.c: Implements various operations on a singly linked list: insert at front, delete at rear, search, and display. (Coursework Exercise)
doubly_linked_list.c: Implements a doubly linked list with a menu-driven interface for create (end insertion), display, insert/delete at front, search, and exit. (Coursework Exercise)
stack_linked_list.c: Implements a stack data structure using a linked list. Provides options to add, remove, and display elements, with exception handling. (Coursework Exercise)
queue_linked_list.c: Implements a queue data structure using a linked list. Provides options to add, remove, and display elements, with exception handling. (Coursework Exercise)
bst_student_scores.c: Implements a Binary Search Tree (BST) to manage student scores (1-100). Provides functionality to insert scores, display in ascending order, find highest/lowest scores, and search for a specific score. (Coursework Exercise)
To compile and run a specific program, navigate to the directory containing the .c file in your terminal and use a C compiler (like GCC):
cc <filename.c>
./a.out