Ruby初心者スレッドPart4
■ このスレッドは過去ログ倉庫に格納されています
0164デフォルトの名無しさん
2006/02/03(金) 09:59:56arr.push(arr.delete(obj))
とすると思うんだけど、arr のサイズがかなり大きい場合、
もっと高速に出来る方法が無いかな、と思っているんだけど、どうかな?
細かい条件は、
* arr のサイズはかなり大きくなることを仮定すべき
* arr 中の各オブジェクトには、絶対に重複は無い
* arr 中に obj は必ず存在する
* 結果的に「該当のオブジェクトの順序を最後尾にする」という事が
効率的に、かつ高速に実現できるのなら、単独の Arrayだけでなく、
他の補助用のオブジェクトを併用しても良い
(つまり、そのために補助用に Hashなどを使っても良い)
また、事前に arr にデータを入れる時点(Array#push)で、何かの工夫があってもよい。
という事なんだけれども。
■ このスレッドは過去ログ倉庫に格納されています