谢谢你昨天的帮助,也感谢你教会了我一些新东西。:)
我有另一个基于排列的问题......我的算法有效但是我有一个问题,即生成的列表中缺少相同的相邻字符。
例如,如果我有字符列表 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”,这会一直持续到程序完成。
我确定我错过了什么,只是不确定是什么?