himmat12 / dsa-playground

This repository contains coding problems for practicing data structures and algorithms, LeetCode-style. Covers arrays, linked lists, stacks, and more. Solve in any language to strengthen problem-solving skills and prep for interviews.

Repository from Github https://github.comhimmat12/dsa-playgroundRepository from Github https://github.comhimmat12/dsa-playground

Data Structures and Algorithms Practice (Internships/ Placements)

This repository contains a collection of coding problems to practice common data structures and algorithms, formatted in the style of LeetCode questions. The problems cover a range of topics such as arrays, linked lists, hash maps, stacks, queues, trees, and graphs, and can be solved in any programming language.

Table of Contents

  1. Introduction
  2. How to Use
  3. Problem List
  4. Contributing
  5. License

Introduction

This repository is designed to help developers improve their problem-solving skills by practicing problems based on data structures and algorithms. The problems follow a progression from basic to advanced levels, covering a wide array of real-world scenarios you might encounter in technical interviews.

These problems are language-agnostic, meaning they can be solved in any programming language, such as JavaScript, Python, C++, Java, or Go. Each problem includes clear examples and constraints to help guide your implementation.

How to Use

  1. Clone the repository:

    git clone https://github.com/your-username/dsa-practice.git
    cd dsa-practice
  2. Choose a problem from the Problem List.

  3. Solve the problem in your preferred programming language. You can create a separate file in the respective folder for the language you're using (e.g., arrays/max-product.py for Python or arrays/max-product.cpp for C++).

  4. Test your solution using your local environment or online compilers.

  5. Submit pull requests if you want to add or improve existing problems, solutions in other languages, or additional test cases.

Example:

To solve a problem, go to the respective folder (e.g., arrays, linked lists) and open the problem's file. After coding the solution in your preferred language, you can test it using your language's environment.

For example, if solving in Python:

python3 arrays/max-product.py

If solving in C++:

g++ arrays/max-product.cpp -o max-product
./max-product

Problem List

Arrays

  1. Maximum Product of Two Integers in an ArrayProblem File
  2. Move Zeroes to EndProblem File
  3. Find the First Non-Repeating ElementProblem File
  4. Maximum Sum of a SubarrayProblem File
  5. Rotate ArrayProblem File
  6. Find All Duplicates in an ArrayProblem File

Linked Lists

(Coming Soon)

Hash Maps

(Coming Soon)

Stacks

(Coming Soon)

Queues

(Coming Soon)

Trees

(Coming Soon)

Graphs

(Coming Soon)

Contributing

Contributions are welcome! If you'd like to contribute, feel free to submit solutions in different programming languages, add new problems, or improve existing problems.

Steps to Contribute

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature/new-problem
  3. Add your solution or problem in your preferred language.
  4. Commit your changes:
    git commit -m 'Add solution for max-product problem in Python'
  5. Push to the branch:
    git push origin feature/new-problem
  6. Open a pull request, and explain your changes.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

This repository contains coding problems for practicing data structures and algorithms, LeetCode-style. Covers arrays, linked lists, stacks, and more. Solve in any language to strengthen problem-solving skills and prep for interviews.

License:MIT License


Languages

Language:HTML 90.4%Language:JavaScript 9.5%Language:Python 0.1%