Python 动态规划的OpitMizing问题(创建图表)
我有一个小任务要做,我真的不知道如何解决它: 我随身带着一些物品,它们有一定的价值和重量,我必须决定我想隐藏哪些,不想隐藏哪些。另外一个问题是体重,因为我走路很长,所以我也不得不考虑这个问题 从对象列表开始,这些对象由索引、值、权重标记。在给定最大重量的帮助下,我必须确定最有价值的对象,它不超过最大重量。对象只能使用一次 我必须用python中的动态编程来解决这个问题。行索引和列索引一直显示到对象(权重)可以优化为止 我所代表的对象是成对的价值和重量: 例如:T[3][5]显示的是最高的Worvil值,可由3个最大重量为5的对象求解 如果你不想只知道物体的最大重量和其他信息,你也必须保存。在每个条目中,如果最高值存在或不存在(1或0),T[i][j]ypu也可以保存,因为每行中只能存在一个物体。此标志也可用于填充表格。因此,功能最佳选择(图表、项目)存在。修改函数createChart(items,MAX),以便tableentries可以从createChart计算成对值和解释标志(0或1) 构造的表T2可以在函数bestChoice的帮助下返回objetslist。实现该函数,以便returnvalues应该是一个列表,它为对象返回0或1,以及是否在节中 我知道任务很艰巨。如果任务中有问题,请提问。提前谢谢Python 动态规划的OpitMizing问题(创建图表),python,dynamic,Python,Dynamic,我有一个小任务要做,我真的不知道如何解决它: 我随身带着一些物品,它们有一定的价值和重量,我必须决定我想隐藏哪些,不想隐藏哪些。另外一个问题是体重,因为我走路很长,所以我也不得不考虑这个问题 从对象列表开始,这些对象由索引、值、权重标记。在给定最大重量的帮助下,我必须确定最有价值的对象,它不超过最大重量。对象只能使用一次 我必须用python中的动态编程来解决这个问题。行索引和列索引一直显示到对象(权重)可以优化为止 我所代表的对象是成对的价值和重量: 例如:T[3][5]显示的是最高的Worv
def createChart( items , MAX ):
#Here should be the solution for creating a chart T from a given list of objects and maximum weight
return ?
def bestChoice( chart , items ):
return ? #the selection of items should be returned here
#Testcase
items = [(3,4),(1,1),(4,5),(3,4),(2,2)]
maxWeight = 8
T = createChart( items , MAX )
# T should be this
#[[(0, 0) (0, 0) (0, 0) (0, 0) (0, 0) (0, 0) (0, 0) (0, 0) (0, 0)],
# [(0, 0) (0, 0) (0, 0) (0, 0) (3, 1) (3, 1) (3, 1) (3, 1) (3, 1)],
# [(0, 0) (1, 1) (1, 1) (1, 1) (3, 0) (4, 1) (4, 1) (4, 1) (4, 1)],
# [(0, 0) (1, 0) (1, 0) (1, 0) (3, 0) (4, 0) (5, 1) (5, 1) (5, 1)],
# [(0, 0) (1, 0) (1, 0) (1, 0) (3, 0) (4, 0) (5, 0) (5, 0) (6, 1)],
# [(0, 0) (1, 0) (2, 1) (3, 1) (3, 0) (4, 0) (5, 0) (6, 1) (7, 1)]]
#first component of the the last table item
bestValue = T[-1][-1][0] #should return the maximal value ( = 7 )
L = bestChoice( T , items)
#should be [0, 1, 1, 0, 1]
这不是和Hello RohithS98很相似吗,实际上很相似,但是想法不同。我能和你联系吗?