//根據(jù)你的方法做出來(lái)了
public class Package {
public static void main(String[] args) {
int[] values = {6,4,5,3,6};
int[] weights= {4,5,6,2,2};
int goods = values.length;
int packageSize = 10;
int[][] mm = new int[goods+1][packageSize+1];//價(jià)值數(shù)組
for(int i=1;i<goods+1;i++) {//物品
for(int j=1;j<packageSize+1;j++) {//容量
//不放
int lastValue = mm[i-1][j];
if(j<weights[i-1]) {
mm[i][j] = lastValue;
continue;
}
//放
int curValue = mm[i-1][j-weights[i-1]]+values[i-1];
mm[i][j] = curValue>lastValue ? curValue : lastValue;
}
}
System.out.println("放入的最大價(jià)值為:"+mm[goods][packageSize]);
for(int i=0;i<goods+1;i++) {
for(int j=0;j<packageSize+1;j++)
System.out.print(mm[i][j]+" ");
System.out.println();
}
}
}
01背包問(wèn)題-通俗易懂尊重勞動(dòng)成果分瘦,轉(zhuǎn)載請(qǐng)注明 github地址:https://github.com/arkulo56/thought/blob/master/software/algorith...
2-3-4 Tree(2-3-4樹(shù)) 二叉查找樹(shù)(Binary Search Tree液荸,簡(jiǎn)稱BST)是一棵二叉樹(shù)瞻佛,它的左子節(jié)點(diǎn)的值比父節(jié)點(diǎn)的值要小,右節(jié)點(diǎn)的值要比父節(jié)點(diǎn)的值大...
最近研究JDK源碼的時(shí)候文搂,發(fā)現(xiàn)TreeMap和TreeSet底層數(shù)據(jù)結(jié)構(gòu)是紅黑樹(shù)适刀,當(dāng)然,TreeSet其實(shí)本質(zhì)上就是Value為一個(gè)固定值的TreeMap煤蹭。在JDK1.8以后...
最近總結(jié)了一些數(shù)據(jù)結(jié)構(gòu)和算法相關(guān)的題目姥芥,這是第一篇文章,關(guān)于二叉樹(shù)的汇鞭。先上二叉樹(shù)的數(shù)據(jù)結(jié)構(gòu): 二叉樹(shù)的題目普遍可以用遞歸和迭代的方式來(lái)解 1.求二叉樹(shù)的最大深度 2.求二叉樹(shù)...