# inputs
edges = [ [1,2] , [2,3] , [3,4] , [4,5] , [5,2] , [4,6] , [6,7] , [7,6] , [7,8] ]
sets = [ [2,3,4,5] , [6,7] ]
# output
sets_of_edges = [ [ [2,3] , [3,4] , [4,5] , [5,2] ] , [ [6,7] , [7,6] ] ]
如何编写采用“边”和“集”并输出“sets_of_edges”的代码,通过遍历“集”中的每个集并获取包含集中每个值的边集(如果有意义的话) )。我写了一个示例输入和输出来帮助解释。谢谢! :)
.
这是一个可以解决您的问题的快速代码示例:
# inputs
edges = [[1, 2], [2, 3], [3, 4], [4, 5], [
5, 2], [4, 6], [6, 7], [7, 6], [7, 8]]
sets = [[2, 3, 4, 5], [6, 7]]
# output
sets_of_edges = [[[2, 3], [3, 4], [4, 5], [5, 2]], [[6, 7], [7, 6]]]
res = []
for current_set in sets:
temp = []
for current_edge in edges:
if current_edge[0] in current_set and current_edge[1] in current_set:
temp.append(current_edge)
res.append(temp)
print(res)