ホームページ  >  に質問  >  本文

Ruby 原地排序数组的一段

ruby 中想对数组中间的一段进行排序,我知道可以这样:

a[1..2] = a[1..2].sort!

但这样会有一次拷贝,出于效率原因希望不产生任何拷贝,直接在原数组上排序。

PHP中文网PHP中文网2710日前500

全員に返信(2)返信します

  • 怪我咯

    怪我咯2017-04-24 09:12:39

    Sort は配列の構造のみをコピーし、配列の内容はコピーされないため、パフォーマンスへの影響は最小限です。

    このコードのパフォーマンスのボトルネックとなるデータ量はどれくらいですか?

    返事
    0
  • 阿神

    阿神2017-04-24 09:12:39

    sort メソッドを使用すると、新しい配列が再生成されます。配列の添字を使用して比較対象の要素を取り出し、位置を入れ替えるだけです。

    返事
    0
  • キャンセル返事