0

配列をソートしようとしていますが、演習ではsortメソッドを使用できません。

空の配列と、1 つの項目しかない配列も返さなければならないので、ちょっとごまかしました。厳密には3つまでソートすればいいのですが、こういうシチュエーションで使うのもありかなwhile

これが私がこれまでに得たものです。

def my_sort(input)
  if input[0] == nil
    print "[]"
  elsif input[1] == nil
    print "[" + input[0].to_s + "]"
  end
end

これを文字列に分割する必要があるのか​​ 、それとも何かできることがあるのだろうかと思って.each do ||います。

4

2 に答える 2

3

ソートアルゴリズムを求めているようです。たくさんありますが、挿入ソートのようなものは、おそらく実装するのが最も簡単なものの 1 つです。ソートする数が多すぎない場合は、おそらくバブルソートです。

たぶん、このSO投稿が役立ちます。

于 2012-06-15T20:14:01.177 に答える
0

3 つのアイテムのみをソートする場合は、バブル ソートをお勧めします。必要なことは、一度に 1 要素ずつ配列を調べることだけです。現在の要素の値が順序どおりでない場合は、次の要素と交換します。大きなリストの場合、これは本当にひどいアルゴリズムです。しかし、これはソート アルゴリズムの簡単な入門書です。

于 2012-06-15T20:13:20.287 に答える