在恒定空间中合并给定的元素数组

时间:2015-02-07 17:18:39

标签: c algorithm sorting data-structures

给定像[a1,a2,...an, b1,b2,...bn, c1,c2,...cn]这样的元素数组如何在不使用额外内存的情况下合并[a1, b1, c1, a2, b2, c2, ... an, bn, cn]

1 个答案:

答案 0 :(得分:0)

假设"元素"是一个小于一半MAXINT的有符号整数,以下内容允许您在不使用额外存储单元的情况下交换两个整数x和y(来源:Prof. Dekker,UvA):

x= x + y;    // x is now (x+y)
y= x - y;    // y is now (x+y) - y = old x
x= x - y;    // x is now (x+y) - ((x+y)-y) =old y