謝謝您的幫助,昨天教我一些新的東西爲好。 :)紅寶石置換(內建) - 結果不包含相鄰的相同字母
我有基於排列另一個問題...算法我的作品,但是我有一個相同的相鄰字符從生成的列表中缺少的問題。
例如,如果我有字符列表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」,直到節目結束後這種情況持續下去的。
我相信我失去了一些東西,只是不知道是什麼?
您可以像這樣生成您的字母表:[[*'a'..'z'],[*'0'..'9 '],' - ']。flatten'。在1.9中,你甚至可以做'[*?a ..?z,?0 ..?9,' - ']'。 – 2011-05-31 14:59:07
我仍然可以使用排列或我需要使用另一種方法,如repeat_permutation? – 2011-05-31 15:06:13
你想要的是'repeated_permutation'。 :-) – 2011-05-31 15:29:39