原題的假設夠清楚了吧

來源: 2009-08-09 17:26:12 [舊帖] [給我悄悄話] 本文已被閱讀:

給出一個數列
a[1],a[2],a[3],...,a[2n]
其中a[i]可以是任意值,可以重複也可以不重複。

要求用const auxiliary memory和linear time,把數組變成
a[1],a[3],...,a[2n-1],a[2],a[4],...,a[2n]

我隻是說O(nlogn) time + O(1) memory比較容易辦到,沒說這樣解決了原問題。顯然O(n)+O(1)並不是容易的事情。