如何并行地迭代两个不同的列表,收敛到一个

时间:2019-02-11 09:35:37

标签: python-3.x algorithm

a = [1, 2, 7, 5, 11]
b = [3, 4, 5, 11]

以上示例与

有关
(1)-->(2)-->(7)-->(5)--(11)

                /
(3) -->(4) ----

这里节点5是两个列表的合并点。

1 个答案:

答案 0 :(得分:2)

对于保证公共尾巴的情况:

从两端开始以相反的方向迭代这两个列表,直到发现差异为止。记住常见尾巴起点的索引。

现在,如果需要,可以在交点之前遍历两个列表的开头。


替代方法-如果存在严格的顺序:

在每个步骤中,以较小的当前元素