mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-10 04:06:51 +08:00
背包问题理论基础完全背包:修改Java版本代码格式化问题
This commit is contained in:
@ -177,41 +177,41 @@ int main() {
|
|||||||
Java:
|
Java:
|
||||||
|
|
||||||
```java
|
```java
|
||||||
//先遍历物品,再遍历背包
|
//先遍历物品,再遍历背包
|
||||||
private static void testCompletePack(){
|
private static void testCompletePack(){
|
||||||
int[] weight = {1, 3, 4};
|
int[] weight = {1, 3, 4};
|
||||||
int[] value = {15, 20, 30};
|
int[] value = {15, 20, 30};
|
||||||
int bagWeight = 4;
|
int bagWeight = 4;
|
||||||
int[] dp = new int[bagWeight + 1];
|
int[] dp = new int[bagWeight + 1];
|
||||||
for (int i = 0; i < weight.length; i++){
|
for (int i = 0; i < weight.length; i++){
|
||||||
for (int j = 1; j <= bagWeight; j++){
|
for (int j = 1; j <= bagWeight; j++){
|
||||||
if (j - weight[i] >= 0){
|
if (j - weight[i] >= 0){
|
||||||
dp[j] = Math.max(dp[j], dp[j - weight[i]] + value[i]);
|
dp[j] = Math.max(dp[j], dp[j - weight[i]] + value[i]);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (int maxValue : dp){
|
|
||||||
System.out.println(maxValue + " ");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
for (int maxValue : dp){
|
||||||
|
System.out.println(maxValue + " ");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//先遍历背包,再遍历物品
|
//先遍历背包,再遍历物品
|
||||||
private static void testCompletePackAnotherWay(){
|
private static void testCompletePackAnotherWay(){
|
||||||
int[] weight = {1, 3, 4};
|
int[] weight = {1, 3, 4};
|
||||||
int[] value = {15, 20, 30};
|
int[] value = {15, 20, 30};
|
||||||
int bagWeight = 4;
|
int bagWeight = 4;
|
||||||
int[] dp = new int[bagWeight + 1];
|
int[] dp = new int[bagWeight + 1];
|
||||||
for (int i = 1; i <= bagWeight; i++){
|
for (int i = 1; i <= bagWeight; i++){
|
||||||
for (int j = 0; j < weight.length; j++){
|
for (int j = 0; j < weight.length; j++){
|
||||||
if (i - weight[j] >= 0){
|
if (i - weight[j] >= 0){
|
||||||
dp[i] = Math.max(dp[i], dp[i - weight[j]] + value[j]);
|
dp[i] = Math.max(dp[i], dp[i - weight[j]] + value[j]);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (int maxValue : dp){
|
|
||||||
System.out.println(maxValue + " ");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
for (int maxValue : dp){
|
||||||
|
System.out.println(maxValue + " ");
|
||||||
|
}
|
||||||
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user