【发布时间】:2016-08-24 06:26:30
【问题描述】:
给定一个大小为 2n -1 个元素的列表,该列表如下所示:
x1, x2, x3, ....., xn, y1, y2, y3, ....y(n-1)
将其转换为:
x1, y1, x2, y2, x3, y3, ........., y(n-1), xn
我可以为每个列表使用两个迭代器,并以 O(n) 时间复杂度和 O(n) 空间复杂度获得解决方案。但是如果我的 n 非常大,有没有办法以较小的空间复杂度做到这一点?
【问题讨论】:
-
您真的必须明确合并这两个列表吗?您可以轻松说出结果列表中的
k-th元素是什么,而无需真正执行合并。 -
关于有效地应用任意排列的更一般的问题,请参阅cstheory.stackexchange.com/questions/6711/…
-
@augurar 是的,但方法相同 - 就地转置 2xN 矩阵