例如,两个数组:
var names = ['Tom','Jerry','Sam'];
var hobbies = ['Eat','Sleep','Laugh'];
是否有一个函数可以将两个数组构造为如下映射:
{'Tome':'Eat','Jerry':'Sleep','Sam':'Laugh'}
{'Tome':'Sleep','Jerry':'Eat','Sam':'Laugh'}
{'Tome':'Laugh','Jerry':'Eat','Sam':'Laugh'}
还有另外3个。。。 在给定两个数组的情况下,返回的maps数应该是A33=6。 通过javascript或python,任何人都可以做到这一点。 有什么想法吗?你知道吗
要将名称映射到第二个数组的每个可能排列:
请注意,^{} 返回长度为
N!
的列表,即使长度非常小,也会非常大。你知道吗我从这个链接Permutations in JavaScript?得到了答案。你知道吗
之后,方法可以这样做:
}
}
这不是排列,而是两个向量的乘积。在Python Itertools中,有一个函数产品可以处理这个问题。你知道吗
结果是:[('Tom','Eat'),('Tom','Sleep'),('Tom','Laugh'),('Jerry','Eat'),('Jerry','Sleep'),('Jerry','Laugh'),('Sam','Eat'),('Sam','Sleep'),('Sam','Laugh')]
实际上,两个向量的乘积就是对向量1和向量2的每一个进行运算,在这种情况下,运算就是生成一个元组。产品操作相当于:
相关问题 更多 >
编程相关推荐