http://d.hatena.ne.jp/ryamada/20110622
これはちょっとすごい(ひどい)ですね。
定義された InvSeq は order 関数の結果と同じになります。
s が長いと,悲惨な結果になります。下の例では 1 万倍以上の速度比。
> s <- sample(10000) # sample(1:10000, 10000) などとする必要はない
> system.time(invs <- InvSeq(s))
user system elapsed
22.910 3.197 25.971
> system.time(invs2 <- order(s)) # 一瞬で終わる
user system elapsed
0.002 0.000 0.002
> all.equal(invs, invs2)
[1] TRUE
> 22910/2
[1] 11455