Определение, содержит ли один массив содержимое другого массива в ruby - PullRequest
8 голосов
/ 18 мая 2010

В ruby, как мне проверить, что один массив не только содержит элементы другого массива, но и содержит их в определенном порядке?

correct_combination = [1, 2, 3, 4, 5]
[1, 5, 8, 2, 3, 4, 5].function_name(correct_combination) # => false
[8, 10, 1, 2, 3, 4, 5, 9].function_name(correct_combination) # => true

Я пытался использовать include, но это используется для проверки, является ли [1,2,3].include?(2) истинным или нет.

Ответы [ 11 ]

0 голосов
/ 18 мая 2010

Вы можете просто сравнить массивы как строки:

correct_combination = [1, 2, 3, 4, 5]
yep = [8, 10, 1, 2, 3, 4, 5, 9]
nope = [1, 5, 8, 2, 3, 4, 5]
if yep.to_s.include?(correct_combination.to_s)
  puts "yep"
end
if nope.to_s.include?(correct_combination.to_s)
  puts "nope"
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...