Я заметил, что с Ruby 2.0.0 класс массива имеет метод bsearch
, который я тестировал, и я не получаю такого поведения, которого я ожидал бы. Почему он возвращает значение для 2 и 5, но nil
для -1, 1 и 4?
arr_in = [-1, 1, 2, 4, 5]
arr_in.bsearch { |x| x == 3 } #=> nil
arr_in.bsearch { |x| x == -1 } #=> nil
arr_in.bsearch { |x| x == 1 } #=> nil
arr_in.bsearch { |x| x == 2 } #=> 2
arr_in.bsearch { |x| x == 4 } #=> nil
arr_in.bsearch { |x| x == 5 } #=> 5