En programmation, le retournement de chaînes est un problème très courant et la plupart des langages de programmation ont des fonctions de retournement de chaînes intégrées. Mais si les fonctions intégrées ne sont pas autorisées, comment implémenter le retournement de chaîne ?
Cet article présentera plusieurs méthodes et techniques de programmation différentes pour implémenter le retournement de chaînes. Ces méthodes fonctionnent avec la plupart des langages de programmation, dont PHP.
Méthode 1 : itération de boucle
Il s'agit de la méthode de retournement de chaîne la plus courante. La méthode est très simple, il suffit de commencer à parcourir à partir du dernier caractère de la chaîne et de regrouper les caractères dans une nouvelle chaîne un par un.
Nous pouvons implémenter cette méthode avec le code PHP suivant :
function reverse_string($str) { $new_str = ""; $len = strlen($str); for ($i = $len - 1; $i >= 0; $i--) { $new_str .= $str[$i]; } return $new_str; }
En utilisant cette méthode, si nous voulons retourner la chaîne "Hello World!", elle affichera "!dlroW olleH".
Méthode 2 : Récursion
La récursion est une technique de programmation très utile. Pour implémenter la méthode récursive de retournement de chaîne, nous devons diviser la chaîne en deux parties : le premier caractère et les caractères restants. Nous pouvons mettre le premier caractère en dernier et appeler la fonction de manière récursive pour traiter les caractères restants.
Le code PHP suivant implémente cette méthode :
function reverse_string($str) { if (strlen($str) == 0) { return $str; } else { return reverse_string(substr($str, 1)) . $str[0]; } }
En utilisant cette méthode, si vous souhaitez retourner la chaîne "Hello World!", vous afficherez "!dlroW olleH".
Méthode 3 : Utiliser la pile
Si vous êtes familier avec les structures de données, vous avez peut-être déjà pensé à cette méthode. Le retournement de chaînes est très pratique en utilisant la pile. Nous utilisons une pile pour stocker tous les caractères de la chaîne, puis extrayons chaque caractère de la pile et les concaténons ensemble pour obtenir la chaîne inversée.
Le code PHP suivant implémente cette méthode :
function reverse_string($str) { $stack = new SplStack(); $len = strlen($str); for ($i = 0; $i < $len; $i++) { $stack->push($str[$i]); } $new_str = ""; while (!$stack->isEmpty()) { $new_str .= $stack->pop(); } return $new_str; }
En utilisant cette méthode, si vous souhaitez retourner la chaîne "Hello World!", vous afficherez "!dlroW olleH".
Résumé
Il existe de nombreuses façons d'implémenter le retournement de chaînes. Cet article présente trois méthodes courantes : l'itération de boucle, la récursivité et l'utilisation de la pile. Ces méthodes sont basées sur des techniques de programmation plutôt que sur des fonctions intégrées, elles peuvent donc être utilisées dans n'importe quel langage de programmation.
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!