An interactive web-based visualization of the Coin Change Problem using the Bottom-Up Dynamic Programming approach. This project helps to understand how the DP table is built step by step while computing the total number of ways to make a target amount using any number of given coin denominations.
📚 Developed as a Design & Analysis of Algorithms (DAA) course project.
- Interactive Coin Change Problem Solver
- Bottom-Up Dynamic Programming Implementation
- Step-by-Step DP Table Visualization
- Automatic DP Table Generation
- DP Recurrence Explanation
- All Valid Coin Combinations
- Complexity Analysis
- Pseudocode Display
- Input Validation
- Responsive Modern UI
Given an array of coin denominations and a target amount V, determine the total number of distinct ways to make exactly V using unlimited coins of each denomination.
Example:
Coins:
1, 2, 3
Target:
4
Output:
4 Ways
The valid combinations are:
- 1 + 1 + 1 + 1
- 1 + 1 + 2
- 2 + 2
- 1 + 3
The project uses **Tabulation (Bottom Up DP) **.
| Complexity | Value |
|---|---|
| Time | O(n × V) |
| Space | O(n × V) |
where
- n = number of coin denominations
- V = target amount
- HTML5
- CSS3
- Vanilla Javascript
- Dynamic Programming (DP)
- Enter coin denominations separated by commas.
Example:
1,2,5
-
Enter the target amount.
-
Click Run.
-
Explore
- DP Table
- Step Mode
- Animation
- Combinations
- Complexity Analysis
This project helps understand:
- Dynamic Programming
- Tabulation
- Optimal Substructure
- DP Table Construction
- Algorithm Visualization
- Time & Space Complexity Analysis
Aftab Ahmed Khan
Computer Science Engineering Student at NITP
GitHub: https://github.com/AftabAhmedKhan183
Give this repository a ⭐ on GitHub!
It motivates me to build more educational algorithm visualizers.
This project is developed for educational purposes under the MIT License.