【发布时间】:2020-07-03 15:33:04
【问题描述】:
我有两个列表,比如说:
[[37.1, -122.1], [37.2,-122.2], [37.3,-122.3]]
&
[[37.3, -122.3], [38.1,-123.1], [38.2,-123.2]]
我需要检查该 lats/lngs 列表中的 first OR last 项是否与另一个 first OR last 对相同。
在这种情况下,第一个列表的最后一对 [37.3,-122.3] 等于第二个列表的第一对。
我需要将第二个列表附加到第一个列表中,不包括第一个 lat/lng 对,而不更改第二个列表的顺序,除非结果与编辑版本中的结果类似。
这很重要,因为它形成了一条要在地图上绘制的线。
最终结果是:
[[37.1, -122.1], [37.2,-122.2], [37.3, -122.3], [38.1,-123.1], [38.2,-123.2]]
这需要是一种可扩展的方法,因为我有很多需要相互依赖的方法。
编辑
我得到的答案很好,但它必须只检查第一个或最后一个,如果结果是 list2[-1] == list1[0],它必须颠倒顺序
另一个例子。
[[37.1, -122.1], [37.2,-122.2], [37.3,-122.3]]
&
[[37.3, -122.3], [38.1,-123.1], [38.2,-123.2]]
&
[[37.1, -122.1], [39.1,-124.1], [39.2,-124.2]]
在这种情况下,结果列表将是
[[39.2,-124.2], [39.1,-124.1], [37.1, -122.1], [37.2,-122.2], [37.3,-122.3], [38.1,-123.1], [38.2,-123.2]]
【问题讨论】:
-
如果只有这两个列表,我喜欢这两个解决方案,但我有一个包含几十个列表的列表,它必须检查每个列表中的匹配项。