Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.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 - Fatal编程技术网

Python 最可能的对

Python 最可能的对,python,Python,给定一个值列表和可能匹配的信息,是否有一种有效的方法来确定一对中遗漏的最小值数?比如说 values = [1,2,3,4] matches[1] = [4] matches[2] = [3, 4] matches[3] = [2] matches[4] = [1, 2] 这里可能的配对可能是 [(1,4),(2,3)] [(2,4)] 其中前者最好,0个未配对 列表中任何元素的可能匹配项可以是任何一组值,但关系是对称的。值可以有重复 我当然可以生成所有可能的配对并测试每个配对,但这相当慢。

给定一个值列表和可能匹配的信息,是否有一种有效的方法来确定一对中遗漏的最小值数?比如说

values = [1,2,3,4]
matches[1] = [4]
matches[2] = [3, 4]
matches[3] = [2]
matches[4] = [1, 2]
这里可能的配对可能是

[(1,4),(2,3)]
[(2,4)]
其中前者最好,0个未配对

列表中任何元素的可能匹配项可以是任何一组值,但关系是对称的。值可以有重复

我当然可以生成所有可能的配对并测试每个配对,但这相当慢。尝试像树一样生成可能的匹配(或不匹配),从列表中删除对,并在列表用尽后返回未匹配的数目,这样做是可行的,但在20年代达到列表大小时,速度会急剧减慢(请注意,这可能只是我的实现)

在内部,我将有关匹配的信息作为字典,其中

matches[i] = [j for j in range(len(values)) if ismatch(values[j], values[i])]

它本身可能有效,也可能无效。

是否将
匹配[n]
作为允许匹配的
n
值的列表?你的描述不清楚。听起来这只是一个例子,你应该去看看。