Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ashifhassandev/dsa-workouts
A repository containing DSA workout exercises and a structured roadmap, designed to help users enhance their problem-solving skills.
https://github.com/ashifhassandev/dsa-workouts
algorithms algorithms-and-data-structures data-structures javascript roadmap
Last synced: 4 days ago
JSON representation
A repository containing DSA workout exercises and a structured roadmap, designed to help users enhance their problem-solving skills.
- Host: GitHub
- URL: https://github.com/ashifhassandev/dsa-workouts
- Owner: ashifhassandev
- Created: 2024-11-21T04:38:40.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-01-05T04:33:09.000Z (about 1 month ago)
- Last Synced: 2025-01-14T03:38:16.929Z (23 days ago)
- Topics: algorithms, algorithms-and-data-structures, data-structures, javascript, roadmap
- Language: JavaScript
- Homepage:
- Size: 12.7 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# DSA Workouts
Welcome to the **DSA Workouts** repository! This project is designed to help users enhance their problem-solving skills in **Data Structures and Algorithms (DSA)** through well-structured exercises and implementations. It provides a hands-on approach with an organized roadmap to guide your learning journey.
## Table of Contents
- [About the Repository](#about-the-repository)
- [Project Structure](#project-structure)
- [Features](#features)
- [Getting Started](#getting-started)
- [Usage](#usage)
- [Roadmap](#roadmap)
- [Contributions](#contributions)
- [License](#license)## About the Repository
This repository provides implementations of common data structures and algorithms, alongside practical exercises to help you master the concepts. It is structured to facilitate learning by providing focused modules for each topic.
## Project Structure
```plaintext
dsa-workouts/
├── algorithms/ # Algorithms folder
│ ├── binary-search/
│ │ └── binarySearch.js
│ ├── bubble-sort/
│ │ └── bubbleSort.js
│ ├── insertion-sort/
│ │ └── insertionSort.js
│ ├── linear-search/
│ │ └── linearSearch.js
│ ├── merge-sort/
│ │ └── mergeSort.js
│ ├── quick-sort/
│ │ └── quickSort.js
│ └── selection-sort/
│ └── selectionSort.js
├── arrays/
│ └── array.js
├── binary-search-trees/
│ └── binarySearchTree.js
├── graphs/
│ └── graph.js
├── hash-tables/
│ └── hashTables.js
├── heaps/
│ └── heap.js
├── linked-lists/
│ └── linkedLists.js
├── queues/
│ └── queue.js
├── stacks/
│ └── stack.js
├── strings/
│ └── string.js
├── trees/
│ └── tree.js
└── tries/
└── trie.js
```## Features
- **Algorithms**: Covers all major algorithms like searching, sorting, and more.
- **Data Structures**: Detailed implementations of arrays, stacks, queues, linked lists, trees, graphs, and more.
- **Modular Design**: Each topic is separated into its own folder for easy navigation.
- **Roadmap Integration**: Follows the [Data Structures and Algorithms Roadmap](https://roadmap.sh/datastructures-and-algorithms).## Getting Started
1. **Clone the repository**:
```bash
git clone https://github.com/your-username/dsa-workouts.git
cd dsa-workouts
```2. **Install Node.js (if not already installed)**:
- [Download Node.js](https://nodejs.org/)3. **Run any JavaScript file**:
Navigate to a folder and run the file:
```bash
node algorithms/binary-search/binarySearch.js
```## Usage
- **Algorithms**: Implement and test various algorithms in their respective folders.
- **Data Structures**: Understand and implement foundational data structures like arrays, linked lists, graphs, and more.
- **Exercises**: Practice exercises based on each topic.## Roadmap
This repository aligns with the [Data Structures and Algorithms Roadmap](https://roadmap.sh/datastructures-and-algorithms) to provide a structured learning path.
## Contributions
Contributions are welcome! If you want to improve the repository or add new implementations, follow these steps:
1. Fork the repository.
2. Create a new branch:
```bash
git checkout -b feature-new-topic
```
3. Commit your changes:
```bash
git commit -m "Add a new topic/feature"
```
4. Push to the branch:
```bash
git push origin feature-new-topic
```
5. Submit a pull request.## License
This project is licensed under the [MIT License](LICENSE).
## Acknowledgments
- Inspired by the [roadmap.sh](https://roadmap.sh/datastructures-and-algorithms) learning path.
- Special thanks to the open-source community for their resources and guidance.Happy Learning! 🎉