Algorithms and Data Structures Lab Assignments

Description

This repository contains lab assignments for the "Algorithms and Data Structures" course, which is part of the university curriculum. Each assignment focuses on exploring different algorithms and data structures, with an emphasis on understanding their principles, efficient implementation, and complexity analysis.

Contents

The repository includes the following lab assignments:

  1. Searching – Study and implementation of search algorithms such as linear search, binary search, and other advanced search techniques.
  2. Linked Lists - Implementation of singly linked lists, doubly linked lists, and circular linked lists.
  3. Graphs – Exploration of algorithms such as depth-first search, breadth-first search, minimum spanning trees, shortest paths, and other graph-related topics.
  4. Stack/Queue - Implementation and usage of stacks and queues, including applications and operations like push, pop, enqueue, dequeue.
  5. Hash Table – Working with hash tables, including collision handling techniques like chaining and open addressing.
  6. Sorting – Study and implementation of sorting algorithms such as bubble sort, quicksort, merge sort, and heap sort.
  7. Multidimensional array - Usage and manipulation of multidimensional arrays, including their application in matrix operations and other advanced tasks.