Skip to content

This repository contains my personal solutions to the problem sets assigned in the CS2040S course. Each problem set focuses on different aspects of data structures and algorithms, providing a comprehensive understanding of the subject matter.

Notifications You must be signed in to change notification settings

maahir-garg/CS2040S-problem-sets-AY23-24S2

Repository files navigation

CS2040S-problem-sets-AY23-24S2

Welcome to the repository containing the solutions to the problem sets I worked on for my CS2040S course at college. This repository is intended to serve as a reference for students currently taking the course, as well as a portfolio to demonstrate my problem-solving skills in data structures and algorithms.

Table of Contents

Introduction

This repository contains my personal solutions to the problem sets assigned in the CS2040S course. Each problem set focuses on different aspects of data structures and algorithms, providing a comprehensive understanding of the subject matter.

Course Overview

CS2040S: Data Structures and Algorithms

The CS2040S course is designed to provide an in-depth understanding of fundamental data structures and algorithms. Topics covered include:

  • Arrays and Linked Lists
  • Stacks and Queues
  • Hash Tables
  • Trees and Graphs
  • Sorting and Searching Algorithms
  • Dynamic Programming
  • Greedy Algorithms

Problem Sets

Below is a list of the problem sets solved in this repository:

  1. PS_1: Shift Register
  2. PS_2: Load Balancing
  3. PS_3: Sorting Detective
  4. PS_4: ScapeGoat Trees
  5. PS_5: ScapeGoat Trees, Part 2
  6. PS_6: Markov Model
  7. PS_7_1: Mazes Part 1
  8. PS_7_2: Mazes Part 2
  9. PS_7_3: Mazes Part 3
  10. PS_8: Traveling Salesman

Each problem set is contained within its own directory and includes the problem statement, solution code, and any additional notes or explanations.

Structure

The repository is structured as follows:

CS2040S-Problem-Sets/
│
├── PS_1_Shift_Register/
│   ├── PS_1.pdf
│   ├── src/
│   │   ├── Solution1.java
│   │   └── ...
│
├── PS_2_Load_Balancing/
│   ├── PS_2.pdf
│   ├── src/
│   │   ├── Solution2.java
│   │   └── ...
│
├── PS_3_Sorting_Detective/
│   ├── PS_3.pdf
│   ├── src/
│   │   ├── Solution3.java
│   │   └── ...
│
├── PS_4_ScapeGoat_Trees/
│   ├── PS_4.pdf
│   ├── src/
│   │   ├── Solution4.java
│   │   └── ...
│
├── PS_5_ScapeGoat_Trees_Part_2/
│   ├── PS_5.pdf
│   ├── src/
│   │   ├── Solution5.java
│   │   └── ...
│
├── PS_6_Markov_Model/
│   ├── PS_6.pdf
│   ├── src/
│   │   ├── Solution6.java
│   │   └── ...
│
├── PS_7_1_Mazes_Part_1/
│   ├── PS_7_1.pdf
│   ├── src/
│   │   ├── Solution7_1.java
│   │   └── ...
│
├── PS_7_2_Mazes_Part_2/
│   ├── PS_7_2.pdf
│   ├── src/
│   │   ├── Solution7_2.java
│   │   └── ...
│
├── PS_7_3_Mazes_Part_3/
│   ├── PS_7_3.pdf
│   ├── src/
│   │   ├── Solution7_3.java
│   │   └── ...
│
├── PS_8_Traveling_Salesman/
│   ├── PS_8.pdf
│   ├── src/
│   │   ├── Solution8.java
│   │   └── ...
│
└── README.md

Usage

To view the solutions, navigate to the respective problem set directory, open the problem statement PDF, and review the solution files in the src folder. Each solution is written in Java.

Contributing

If you have suggestions for improvements or alternative solutions, feel free to fork this repository and create a pull request. Please ensure your contributions are well-documented and adhere to the coding standards used in this repository.

Feel free to reach out if you have any questions or need further clarification on any of the solutions provided. Happy Coding

About

This repository contains my personal solutions to the problem sets assigned in the CS2040S course. Each problem set focuses on different aspects of data structures and algorithms, providing a comprehensive understanding of the subject matter.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages