Является ли sort
в Ruby stable? То есть для элементов, которые находятся в галстуке для sort
, относительный порядок среди них сохраняется из первоначального порядка? Например, данный:
a = [
{id: :a, int: 3},
{id: :b, int: 1},
{id: :c, int: 2},
{id: :d, int: 0},
{id: :e, int: 1},
{id: :f, int: 0},
{id: :g, int: 1},
{id: :h, int: 2},
]
гарантируется, что мы всегда получаем для
a.sort_by{|h| h[:int]}
следующее
[
{id: :d, int: 0},
{id: :f, int: 0},
{id: :b, int: 1},
{id: :e, int: 1},
{id: :g, int: 1},
{id: :c, int: 2},
{id: :h, int: 2},
{id: :a, int: 3},
]
без изменения для относительного порядка среди элементов со значением :id
:d
, :f
и среди :b
, :e
, :g
и среди :c
, :h
? Если это так, где описано в документации?
Этот вопрос может иметь или не иметь связи с этим вопросом.