我想創建一個動態字符串生成器,它將從具有動態長度的字符集中生成所有可能的唯一字符串。動態字符發生器;從字符集生成所有可能的字符串
我可以很容易地使用for循環,但然後它的靜態和動態長度。
// Prints all possible strings with the length of 3
for a in allowedCharacters {
for b in allowedCharacters {
for c in allowedCharacters {
println(a+b+c)
}
}
}
但是,當我想讓長度的這個充滿活力的,所以我可以叫我generate(length: 5)
感到困惑。
我找到了這個Stackoverflow question但接受的答案生成字符串1-maxLength長度,我希望maxLength永遠字符串。
爲什麼不使用遞歸? – Dmitry
@Arbitur確保解釋「製作重複並且沒有排序」是指 - 在您的文章中沒有提及任何限制,但您聲稱鏈接的解決方案是不可接受的... –
@AlexeiLevenkov鏈接的答案產生了一些像這樣:a,b,aa,aa,ab,bb,bb,ab。幾個重複。 – Arbitur