Спасибо за вчерашнюю помощь и за то, что научили меня чему-то новому. :)
У меня есть еще один вопрос, основанный на перестановке ... алгоритм, который у меня есть, работает, однако у меня есть проблема, что идентичные смежные символы отсутствуют в сгенерированном списке.
Например, если у меня есть список символов az, 0-9, - и допустим, что максимальная длина равна 2, то я должен увидеть aa, bb, cc, dd, ee, ff и т. Д. До тошноты.
length = 1
alphabet = [('a'..'z').to_a, ('0'..'9').to_a, ('-').to_a].flatten
prefix = 'file-'
suffix = '.txt'
while length < 3
alphabet.permutation(length).each do |x|
@name = prefix+x.join('').to_s+suffix
puts @name
end
length += 1
end
Однако я вижу только следующее:
file-ba.txt
file-bc.txt
обратите внимание на пропущенный «bb», и это продолжается до завершения программы.
Я уверен, что что-то упустил, просто не уверен, что?