在Ruby中对数组的一部分进行排序

kpr*_*iya 12 ruby arrays sorting

我有一个ruby数组,我想对所有元素进行排序,从index i到index 开始j.不应修改数组的其余部分.我该如何实现呢?

Jun*_*sor 18

您可以使用a[i, j] = a[i, j].sort!从索引i到索引进行排序j.例:

a = [8, 7, 5, 4, 3]
a[2..4] = a[2..4].sort!
a # => [8, 7, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)

  • `a [2..4] = a [2..4] .sort!`会稍微提高效率,因为它只创建一个临时数组. (3认同)