Ruby 初心者スレッド Part 41
■ このスレッドは過去ログ倉庫に格納されています
0445デフォルトの名無しさん
2011/03/11(金) 14:27:16.65具体的には、scoreというインスタンス変数を持ったBookクラスがあり、
このBookクラスのオブジェクトの配列book_listがあるとします。
book_list内のBookオブジェクトをscoreの高い順に並び替えたいのですが、
自分で考える限り、以下のような感じで力尽きます。
sorted_book_list = []
book_list.each do |b|
sorted_book_list.each_with_index do |sb, i|
if b.score > sb.score
# i番以降の要素を全て一つ後ろにずらす処理がここで必要だが実現できたとしてもパフォーマンスが酷そう。
sorted_book_list[i] = b
break
end
end
end
もっとスマートな方法があれば教えて頂けないでしょうか。
■ このスレッドは過去ログ倉庫に格納されています