Data Structures Lab is designed to provide hands-on experience in implementing and analyzing various data structures using the C programming language.
Through a series of practical exercises, students learn to implement both linear and non-linear data structures such as arrays, linked lists, stacks, queues, trees, and hashing techniques.
PREREQUISITE: ‘C’ Programming
COURSE OUTCOMES (COs):
At the end of the course, student will be able to:
- CO1: Apply Linear Data Structures for organizing the data efficiently.
- CO2: Apply Non-Linear Data Structures to organize data efficiently.
- CO3: Develop and implement hashing techniques for solving problems.
- CO4: Improve individual / teamwork skills, communication and report writing skills with ethical values.
List of Experiments
(Click on the Exercise Number to get Program Code)
Exercise 1: Array Manipulation
- Write a program to reverse an array.
- C Programs to implement the Searching Techniques – Linear & Binary Search
- C Programs to implement Sorting Techniques – Bubble, Selection and Insertion Sort
Exercise 2: Linked List Implementation
- Implement a singly linked list and perform insertion and deletion operations.
- Develop a program to reverse a linked list iteratively and recursively.
- Solve problems involving linked list traversal and manipulation.
Exercise 3: Linked List Applications
- Create a program to detect and remove duplicates from a linked list.
- Implement a linked list to represent polynomials and perform addition.
- Implement a double-ended queue (deque) with essential operations.
Exercise 4: Double Linked List Implementation
- Implement a doubly linked list and perform various operations to understand its properties and applications.
- Implement a circular linked list and perform insertion, deletion, and traversal.
Exercise 5: Stack Operations
- Implement a stack using arrays and linked lists.
- Write a program to evaluate a postfix expression using a stack.
- Implement a program to check for balanced parentheses using a stack.
Exercise 6: Queue Operations
- Implement a queue using arrays and linked lists.
- Develop a program to simulate a simple printer queue system.
- Solve problems involving circular queues.
Exercise 7: Stack and Queue Applications
- Use a stack to evaluate an infix expression and convert it to postfix.
- Create a program to determine whether a given string is a palindrome or not.
- Implement a stack or queue to perform comparison and check for symmetry.
Exercise 8: Binary Search Tree
- Implementing a BST using Linked List.
- Traversing of BST.
Exercise 9: Hashing
- Implement a hash table with collision resolution techniques.
- Write a program to implement a simple cache using hashing.
Comments
Post a Comment