This project aims to provide an interactive environment for recycling knowledge in algorithms and data structures using the Python programming language. The idea is to provide practical examples, clear explanations, and challenges so that users can enhance their skills in solving problems related to algorithms and data structures.
-
Sorting Algorithms:
- Bubble Sort
- Selection Sort
- Insertion Sort
- Merge Sort
- Quick Sort
-
Data Structures:
- Lists
- Stacks
- Queues
- Trees
-
Challenges:
- Diverse set of challenges to practice the learned concepts.
-
Clear Documentation:
- Detailed explanations for each implemented algorithm and data structure.
-
Clone the repository to your local machine:
`git clone https://github.com/erkylima/algorithms.git`
-
Navigate to the project directory:
`cd algorithms`
-
Run the Python scripts corresponding to the desired algorithms and data structures:
`python main.py`
-
Explore the challenges available in the
challenges/
directory:`cd challenges`
-
Contribute: Feel free to add new algorithms, data structures, or challenges. Open a pull request to share your knowledge with the community.
Contributions are welcome! Follow these steps to contribute:
-
Fork the repository.
-
Create a branch for your contribution:
`git checkout -b my-contribution`
-
Make the desired changes and add documentation when necessary.
-
Commit your changes:
`git commit -m "Add binary search algorithm"`
-
Push to the branch:
`git push origin my-contribution`
-
Open a Pull Request.
This project is licensed under the MIT License. Feel free to use, modify, and distribute it as needed.