我有3套/阵列。其中2个被置换为n∈{1,2,3,4}(例如n = 4→ABCD),第3个是2个元素的组合。以下是置换集A和B(它们是相同的):
ABCD ABDC ACBD ACBD ACDB ADBC ADCB BACD BADC BCAD BCDA BDAC BDCA CABD CADB CBAD CBDA CDAB CDBA DABC DACB DBAC DBCA DCAB DCBA
这里的组合为n∈{1,2,3,4}(例如n = 4 - > AA AB AC AD ...)
AA AB AC AD BA BB BC BD CA CB CC CD DA DB DC DD
所以这是输入。
3组/阵列的映射
我希望在不比较每个对象的内容的情况下组合这3个集合/数组,以获得如下输出:
[ABCD DA ABCD] [ABCD DA ABDC] [ABCD DA ACBD] [ABCD DA ACDB] [ABCD DA ADBC] [ABCD DA ADCB] ....
对于集合A的第一个元素。因此,集合A的第一个元素的最后一个字符与组合的第一个字符映射,组合的第二个字符与集合中所有元素的第一个字符映射。乙
这必须与所有元素一起完成。
棘手的部分是,n不是静态的,设置为1,2,3或4.所以我需要一个考虑到这一点的函数。
映射后
集合中的每个元素都是一个描述路径的对象。该目标如下:
originRoute = {
a: google.maps.LatLng,
b: google.maps.LatLng,
c: google.maps.LatLng,
d: google.maps.LatLng,
distance: integer }; //Element of Set A
destinationRoute = {
a': google.maps.LatLng,
b': google.maps.LatLng,
c': google.maps.LatLng,
d': google.maps.LatLng,
distance: integer }; //Element of Set B
connectionRoute = {
originPeer: google.maps.LatLng,
destinationPeer: google.maps.LatLng,
distance: integer }; //Element of Combination
在映射路径A,B,C之后,我想计算从'到'd的最短距离。但要实现这一点,我需要映射这些元素。
任何人都可以给我一个如何实现这一目标,通过考虑每个数组的大小可以用给定的n来变化。