提交 366b48d7 编写于 作者: C CyC2018

auto commit

...@@ -869,22 +869,18 @@ return -1. ...@@ -869,22 +869,18 @@ return -1.
```java ```java
public int coinChange(int[] coins, int amount) { public int coinChange(int[] coins, int amount) {
if (amount == 0 || coins == null || coins.length == 0) { public int change(int amount, int[] coins) {
if (coins == null) {
return 0; return 0;
} }
int[] dp = new int[amount + 1]; int[] dp = new int[amount + 1];
dp[0] = 1;
for (int coin : coins) { for (int coin : coins) {
for (int i = coin; i <= amount; i++) { //将逆序遍历改为正序遍历 for (int i = coin; i <= amount; i++) {
if (i == coin) { dp[i] += dp[i - coin];
dp[i] = 1;
} else if (dp[i] == 0 && dp[i - coin] != 0) {
dp[i] = dp[i - coin] + 1;
} else if (dp[i - coin] != 0) {
dp[i] = Math.min(dp[i], dp[i - coin] + 1);
}
} }
} }
return dp[amount] == 0 ? -1 : dp[amount]; return dp[amount];
} }
``` ```
......
...@@ -869,22 +869,18 @@ return -1. ...@@ -869,22 +869,18 @@ return -1.
```java ```java
public int coinChange(int[] coins, int amount) { public int coinChange(int[] coins, int amount) {
if (amount == 0 || coins == null || coins.length == 0) { public int change(int amount, int[] coins) {
if (coins == null) {
return 0; return 0;
} }
int[] dp = new int[amount + 1]; int[] dp = new int[amount + 1];
dp[0] = 1;
for (int coin : coins) { for (int coin : coins) {
for (int i = coin; i <= amount; i++) { //将逆序遍历改为正序遍历 for (int i = coin; i <= amount; i++) {
if (i == coin) { dp[i] += dp[i - coin];
dp[i] = 1;
} else if (dp[i] == 0 && dp[i - coin] != 0) {
dp[i] = dp[i - coin] + 1;
} else if (dp[i - coin] != 0) {
dp[i] = Math.min(dp[i], dp[i - coin] + 1);
}
} }
} }
return dp[amount] == 0 ? -1 : dp[amount]; return dp[amount];
} }
``` ```
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册