https://github.com/jaysonvirissimo/practice-thy-algorithms
Practice algorithms by making the tests pass in JavaScript, Python, and Ruby
https://github.com/jaysonvirissimo/practice-thy-algorithms
algorithm javascript practice practicing-algorithms python ruby
Last synced: 23 days ago
JSON representation
Practice algorithms by making the tests pass in JavaScript, Python, and Ruby
- Host: GitHub
- URL: https://github.com/jaysonvirissimo/practice-thy-algorithms
- Owner: jaysonvirissimo
- Created: 2014-12-17T01:48:36.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2025-09-24T05:19:51.000Z (about 1 month ago)
- Last Synced: 2025-09-24T06:18:27.045Z (about 1 month ago)
- Topics: algorithm, javascript, practice, practicing-algorithms, python, ruby
- Language: Python
- Homepage:
- Size: 497 KB
- Stars: 45
- Watchers: 4
- Forks: 14
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This repository includes a series of tests that can be used for practicing algorithms in the _Javascript_, _Python_, and _Ruby_ programming languages.
To get started, clone this repo locally:
```
git clone https://github.com/jaysonvirissimo/practice-thy-algorithms.git
```
## JavaScript Instructions
Make sure you have the [npm](https://www.npmjs.com/) package manager installed.
Navigate to the `JavaScript` directory and run `npm install`.
The problem statements are inside the appropriately named files in `lib`.
This is also where you write your own code.
Run `npm test` when you are ready for some feedback on your attempt.
## Python Instructions
Ensure Python is installed.
Navigate to the `Python` directory.
Add your solutions in the `lib` directory.
Run the tests with `python -m unittest discover -s test`.
## Ruby Instructions
Make sure you have `bundler` installed.
Navigate to the `Ruby` directory and run `bundle install`.
The problem statements are inside the appropriately named file in `lib`.
This is also where you write your own code.
Run `rspec` when you are ready for some feedback on your attempt.
## Problems
| Name | JavaScript | Ruby | Python |
|:-------------------------------:|:----------:|:----:|:------:|
| Two Sum | x | x | x |
| Unique Paths | x | x | x |
| Coin Change | x | x | x |
| Contains Duplicate | x | x | x |
| Best Time to Buy and Sell Stock | x | x | x |
| Valid Parentheses | x | x | x |
| Maximum Subarray | x | x | x |
| Product of Array Except Self | x | x | x |
| Three Sum | x | x | x |
| Merge Intervals | x | x | x |
| Group Anagrams | x | x | x |
| Reverse Linked List | x | x | x |
| Detect Cycle in Linked List | x | x | x |
| Container With Most Water | x | x | x |
| Find Minimum in Rotated Sorted Array | x | x | x |
| Longest Repeating Character Replacement | x | x | x |
| Longest Substring Without Repeating Characters | x | x | x |
| Number of Islands | x | x | x |
| Remove Nth Node From End of List | x | x | x |
| Palindromic Substrings | x | x | x |
| Pacific Atlantic Water Flow | x | x | x |
| Minimum Window Substring | x | x | x |