File tree Expand file tree Collapse file tree 2 files changed +12
-20
lines changed Expand file tree Collapse file tree 2 files changed +12
-20
lines changed Original file line number Diff line number Diff line change @@ -869,22 +869,18 @@ return -1.
869869
870870``` java
871871public int coinChange(int [] coins, int amount) {
872- if (amount == 0 || coins == null || coins. length == 0 ) {
872+ public int change(int amount, int [] coins) {
873+ if (coins == null ) {
873874 return 0 ;
874875 }
875876 int [] dp = new int [amount + 1 ];
877+ dp[0 ] = 1 ;
876878 for (int coin : coins) {
877- for (int i = coin; i <= amount; i++ ) { // 将逆序遍历改为正序遍历
878- if (i == coin) {
879- dp[i] = 1 ;
880- } else if (dp[i] == 0 && dp[i - coin] != 0 ) {
881- dp[i] = dp[i - coin] + 1 ;
882- } else if (dp[i - coin] != 0 ) {
883- dp[i] = Math . min(dp[i], dp[i - coin] + 1 );
884- }
879+ for (int i = coin; i <= amount; i++ ) {
880+ dp[i] += dp[i - coin];
885881 }
886882 }
887- return dp[amount] == 0 ? - 1 : dp[amount] ;
883+ return dp[amount];
888884}
889885```
890886
Original file line number Diff line number Diff line change @@ -869,22 +869,18 @@ return -1.
869869
870870``` java
871871public int coinChange(int [] coins, int amount) {
872- if (amount == 0 || coins == null || coins. length == 0 ) {
872+ public int change(int amount, int [] coins) {
873+ if (coins == null ) {
873874 return 0 ;
874875 }
875876 int [] dp = new int [amount + 1 ];
877+ dp[0 ] = 1 ;
876878 for (int coin : coins) {
877- for (int i = coin; i <= amount; i++ ) { // 将逆序遍历改为正序遍历
878- if (i == coin) {
879- dp[i] = 1 ;
880- } else if (dp[i] == 0 && dp[i - coin] != 0 ) {
881- dp[i] = dp[i - coin] + 1 ;
882- } else if (dp[i - coin] != 0 ) {
883- dp[i] = Math . min(dp[i], dp[i - coin] + 1 );
884- }
879+ for (int i = coin; i <= amount; i++ ) {
880+ dp[i] += dp[i - coin];
885881 }
886882 }
887- return dp[amount] == 0 ? - 1 : dp[amount] ;
883+ return dp[amount];
888884}
889885```
890886
You can’t perform that action at this time.
0 commit comments