1 回答

TA貢獻1835條經驗 獲得超7個贊
如果我理解正確,目標是生成一定長度的字符串,每個字母組合?
Ex:
a, b, c...
aa, ab, ac...
aaa, aab, aac...
如果是這種情況,您可以構建一個包含 26 個字母的數組,并將它們傳遞給一個遞歸函數,該函數將字符串構建到您要查找的長度。這是一個使用abc和最大長度4的快速示例。它只是回聲出字符串,但不是回聲,你可以用它們做任何你喜歡的事情:
$arr = array('a', 'b', 'c');
buildString('', $arr, 1);
buildString('', $arr, 2);
buildString('', $arr, 3);
buildString('', $arr, 4);
function buildString($currString, $arr, $targetLength)
{
foreach($arr as $letter)
{
$tmpString = $currString . $letter;
if(strlen($tmpString) != $targetLength)
{
buildString($tmpString, $arr, $targetLength);
}
else
{
echo $tmpString . PHP_EOL;
}
}
}
出于您的目的,可能需要對此進行一些調整,但這只是一個示例,可讓您大致了解如何處理它。
- 1 回答
- 0 關注
- 88 瀏覽
添加回答
舉報