All Downloads are FREE. Search and download functionalities are using the official Maven repository.

g0301_0400.s0322_coin_change.complexity.md Maven / Gradle / Ivy

There is a newer version: 1.35
Show newest version
**Time Complexity (Big O Time):**

1. The program uses dynamic programming to compute the minimum number of coins needed for each possible amount from 0 to `amount`.
2. It iterates through the `coins` array, which has 'm' elements, and for each coin, it iterates from the coin value to `amount`, which has 'n' values.
3. Inside the inner loop, there is a constant-time operation to update the `dp` array.
4. Therefore, the overall time complexity of the program is O(m * n), where 'm' is the number of coin denominations, and 'n' is the given `amount`.

**Space Complexity (Big O Space):**

1. The program uses an integer array `dp` of size `amount + 1` to store the minimum number of coins needed for each amount from 0 to `amount`. Therefore, the space complexity is O(amount).

In summary, the provided program has a time complexity of O(m * n) and a space complexity of O(amount), where 'm' is the number of coin denominations, 'n' is the given `amount`, and the space complexity depends on the value of `amount`.




© 2015 - 2024 Weber Informatics LLC | Privacy Policy