mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-09 11:34:46 +08:00
Merge pull request #2108 from fwqaaq/patch-28
Update 0322.零钱兑换.md about rust
This commit is contained in:
@ -355,23 +355,52 @@ func min(a, b int) int {
|
|||||||
Rust:
|
Rust:
|
||||||
|
|
||||||
```rust
|
```rust
|
||||||
|
// 遍历物品
|
||||||
|
impl Solution {
|
||||||
pub fn coin_change(coins: Vec<i32>, amount: i32) -> i32 {
|
pub fn coin_change(coins: Vec<i32>, amount: i32) -> i32 {
|
||||||
let amount = amount as usize;
|
let amount = amount as usize;
|
||||||
let mut dp = vec![i32::MAX; amount + 1];
|
let mut dp = vec![i32::MAX; amount + 1];
|
||||||
dp[0] = 0;
|
dp[0] = 0;
|
||||||
for i in 0..coins.len() {
|
for coin in coins {
|
||||||
for j in coins[i] as usize..=amount {
|
for i in coin as usize..=amount {
|
||||||
if dp[j - coins[i] as usize] != i32::MAX {
|
if dp[i - coin as usize] != i32::MAX {
|
||||||
dp[j] = dp[j].min(dp[j - coins[i] as usize] + 1);
|
dp[i] = dp[i].min(dp[i - coin as usize] + 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if dp[amount] == i32::MAX { -1 } else { dp[amount] }
|
if dp[amount] == i32::MAX {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
dp[amount]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
```rust
|
||||||
|
// 遍历背包
|
||||||
|
impl Solution {
|
||||||
|
pub fn coin_change(coins: Vec<i32>, amount: i32) -> i32 {
|
||||||
|
let amount = amount as usize;
|
||||||
|
let mut dp = vec![i32::MAX; amount + 1];
|
||||||
|
dp[0] = 0;
|
||||||
|
for i in 1..=amount {
|
||||||
|
for &coin in &coins {
|
||||||
|
if i >= coin as usize && dp[i - coin as usize] != i32::MAX {
|
||||||
|
dp[i] = dp[i].min(dp[i - coin as usize] + 1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if dp[amount] == i32::MAX {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
dp[amount]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
Javascript:
|
Javascript:
|
||||||
```javascript
|
```javascript
|
||||||
|
// 遍历物品
|
||||||
const coinChange = (coins, amount) => {
|
const coinChange = (coins, amount) => {
|
||||||
if(!amount) {
|
if(!amount) {
|
||||||
return 0;
|
return 0;
|
||||||
@ -390,9 +419,26 @@ const coinChange = (coins, amount) => {
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
// 遍历背包
|
||||||
|
var coinChange = function(coins, amount) {
|
||||||
|
const dp = Array(amount + 1).fill(Infinity)
|
||||||
|
dp[0] = 0
|
||||||
|
for (let i = 1; i <= amount; i++) {
|
||||||
|
for (let j = 0; j < coins.length; j++) {
|
||||||
|
if (i >= coins[j] && dp[i - coins[j]] !== Infinity) {
|
||||||
|
dp[i] = Math.min(dp[i], dp[i - coins[j]] + 1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return dp[amount] === Infinity ? -1 : dp[amount]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
TypeScript:
|
TypeScript:
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
|
// 遍历物品
|
||||||
function coinChange(coins: number[], amount: number): number {
|
function coinChange(coins: number[], amount: number): number {
|
||||||
const dp: number[] = new Array(amount + 1).fill(Infinity);
|
const dp: number[] = new Array(amount + 1).fill(Infinity);
|
||||||
dp[0] = 0;
|
dp[0] = 0;
|
||||||
@ -406,6 +452,23 @@ function coinChange(coins: number[], amount: number): number {
|
|||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
// 遍历背包
|
||||||
|
function coinChange(coins: number[], amount: number): number {
|
||||||
|
const dp: number[] = Array(amount + 1).fill(Infinity)
|
||||||
|
dp[0] = 0
|
||||||
|
for (let i = 1; i <= amount; i++) {
|
||||||
|
for (let j = 0; j < coins.length; j++) {
|
||||||
|
if (i >= coins[j] && dp[i - coins[j]] !== Infinity) {
|
||||||
|
dp[i] = Math.min(dp[i], dp[i - coins[j]] + 1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return dp[amount] === Infinity ? -1 : dp[amount]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
|
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
|
||||||
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
|
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
|
||||||
|
Reference in New Issue
Block a user