Maison >développement back-end >tutoriel php >Comment puis-je générer toutes les permutations d'une chaîne en PHP ?
Permutations d'une chaîne en PHP
En PHP, générer toutes les permutations de caractères au sein d'une chaîne implique un algorithme qui explore systématiquement toutes les combinaisons possibles .
Approche de retour en arrière
Une approche efficace est retour en arrière. Voici l'implémentation PHP :
function permute($str,$i,$n) { if ($i == $n) print "$str\n"; else { for ($j = $i; $j < $n; $j++) { swap($str,$i,$j); permute($str, $i+1, $n); swap($str,$i,$j); // backtrack. } } } function swap(&$str,$i,$j) { $temp = $str[$i]; $str[$i] = $str[$j]; $str[$j] = $temp; } $str = "hey"; permute($str,0,strlen($str)); // call the function.
Explication
Sortie
L'exécution du code avec $str = "hey" produit le résultat attendu :
hey hye ehy eyh yeh yhe
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!