【发布时间】:2017-04-07 16:34:10
【问题描述】:
我想将多个列表(数量不定)排序为单个列表,但保持特定顺序。例如:
List A: { 1,2,3,4,5 }
List B: { 6,7,8 }
List C: { 9,10,11,12 }
Result List: { 1,6,9,2,7,10,3,8,11,4,12,5 }
我得到的唯一想法是从每个列表中删除第一个元素并将其放入结果集中(并重复直到所有列表为空),但也许有一种更好的方法不需要创建每个列表的副本列表并且不会影响原始列表?
【问题讨论】:
-
从 0 到 length 遍历每个列表并将每个对应元素放入新列表中?我的意思是 A[0]、B[0]、C[0]、A[1]、(...)。
-
我怎么知道什么时候停止循环?某种标志“hasElements”,在循环开始时设置为 false,如果任何列表仍有更大的计数,则修改为 true?
-
我喜欢 Zip 的想法!会试一试的。
-
Zip希望所有列表相等Lengths