Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 给定索引约束的最大和子数组_Python_Algorithm_Dynamic Programming - Fatal编程技术网

Python 给定索引约束的最大和子数组

Python 给定索引约束的最大和子数组,python,algorithm,dynamic-programming,Python,Algorithm,Dynamic Programming,在某些数组索引不能配对的情况下,如何找到唯一正整数数组的最大和 例如,我们有一个数组:[8,2,1,3,9,4] 索引(0,4)和(4,5)处的元素彼此不相似 在这种情况下,最大和为:8+2+1+3+4=18 假设这是100个条目和多达一半的约束,您将如何处理这个问题 是否有一个像图形这样的数据结构是有用的还是有一些DP?我主要关心的是运行时的效率。您试图解决的是问题。这是图论中的一个问题 数组索引对应于图的顶点。每个顶点的权重是相应索引处的数组值。在您的示例中,顶点0的权重为8,而顶点4的权重

在某些数组索引不能配对的情况下,如何找到唯一正整数数组的最大和

例如,我们有一个数组:[8,2,1,3,9,4]

索引(0,4)和(4,5)处的元素彼此不相似

在这种情况下,最大和为:8+2+1+3+4=18

假设这是100个条目和多达一半的约束,您将如何处理这个问题


是否有一个像图形这样的数据结构是有用的还是有一些DP?我主要关心的是运行时的效率。

您试图解决的是问题。这是图论中的一个问题

数组索引对应于图的顶点。每个顶点的权重是相应索引处的数组值。在您的示例中,顶点0的权重为8,而顶点4的权重为9

互不相似的数组索引对对应于图的边。例如,顶点0和4之间有一条边

您正在寻找一组数组索引,其中没有两个索引彼此不喜欢。对于图,您需要一组顶点,其中没有两个顶点通过边连接。这样一组顶点称为独立集

在所有独立集中,您需要顶点权重总和最大的集。这就是最大权独立集问题


该问题的蛮力方法尝试n个顶点的所有2n子集来确定最大权重。不幸的是,这个问题很严重。人们认为NP难问题不能在多项式时间内求解。换句话说,你不可能比暴力方法做得更好。

你试图解决的是问题。这是图论中的一个问题

数组索引对应于图的顶点。每个顶点的权重是相应索引处的数组值。在您的示例中,顶点0的权重为8,而顶点4的权重为9

互不相似的数组索引对对应于图的边。例如,顶点0和4之间有一条边

您正在寻找一组数组索引,其中没有两个索引彼此不喜欢。对于图,您需要一组顶点,其中没有两个顶点通过边连接。这样一组顶点称为独立集

在所有独立集中,您需要顶点权重总和最大的集。这就是最大权独立集问题


该问题的蛮力方法尝试n个顶点的所有2n子集来确定最大权重。不幸的是,这个问题很严重。人们认为NP难问题不能在多项式时间内求解。换句话说,你不可能比暴力方法做得更好。

你试图解决的是问题。这是图论中的一个问题

数组索引对应于图的顶点。每个顶点的权重是相应索引处的数组值。在您的示例中,顶点0的权重为8,而顶点4的权重为9

互不相似的数组索引对对应于图的边。例如,顶点0和4之间有一条边

您正在寻找一组数组索引,其中没有两个索引彼此不喜欢。对于图,您需要一组顶点,其中没有两个顶点通过边连接。这样一组顶点称为独立集

在所有独立集中,您需要顶点权重总和最大的集。这就是最大权独立集问题


该问题的蛮力方法尝试n个顶点的所有2n子集来确定最大权重。不幸的是,这个问题很严重。人们认为NP难问题不能在多项式时间内求解。换句话说,你不可能比暴力方法做得更好。

你试图解决的是问题。这是图论中的一个问题

数组索引对应于图的顶点。每个顶点的权重是相应索引处的数组值。在您的示例中,顶点0的权重为8,而顶点4的权重为9

互不相似的数组索引对对应于图的边。例如,顶点0和4之间有一条边

您正在寻找一组数组索引,其中没有两个索引彼此不喜欢。对于图,您需要一组顶点,其中没有两个顶点通过边连接。这样一组顶点称为独立集

在所有独立集中,您需要顶点权重总和最大的集。这就是最大权独立集问题



该问题的蛮力方法尝试n个顶点的所有2n子集来确定最大权重。不幸的是,这个问题很严重。人们认为NP难问题不能在多项式时间内求解。换句话说,你不可能比暴力方法做得更好。

有可能有循环吗?比如在你的例子中也有
(5,0)
?我认为这个问题对于CS.SE来说会更好。是的,循环是可能的。很抱歉,邮件放错了位置,这听起来像是一个NP难的打包问题。试试整数编程。@KSFT,将来,如果你推荐另一个站点,如果你能建议用户不要交叉发布,并让他们知道如果他们愿意,如何迁移他们的问题,那就太好了。否则,它会导致新用户交叉发布问题,这违反了网站规则。是否可能有循环?比如在你的例子中也有
(5,0)
?我认为这个问题对于CS.SE来说会更好。是的,循环是可能的。很抱歉,邮件放错了位置,这听起来像是一个NP难的打包问题。试试整数编程。@KSFT,将来如果你推荐另一个站点,它将是n