Maison > développement back-end > C++ > le corps du texte

## Comment la concaténation de chaînes peut-elle déterminer efficacement la rotation des chaînes ?

Barbara Streisand
Libérer: 2024-10-24 18:32:15
original
484 Les gens l'ont consulté

## How Can String Concatenation Efficiently Determine String Rotation?

Détermination de la rotation des chaînes à l'aide de la concaténation de chaînes

Un défi couramment rencontré lors des entretiens de programmation consiste à vérifier si une chaîne est une version pivotée d'une autre. Étant donné deux chaînes s1 et s2, la tâche est de vérifier efficacement si l'une est simplement une permutation cyclique de l'autre.

Dans ce cas, le candidat a proposé une solution qui consiste à identifier le point de rotation et à décomposer s2 en deux segments, s2a et s2b. En concaténant ces segments et en comparant le résultat à s1, la rotation peut être confirmée.

Cependant, l'intervieweur a exprimé sa préférence pour une approche plus directe. Voici une solution plus simple utilisant la concaténation de chaînes et la recherche de chaînes :

Implémentation Java :

<code class="java">public static boolean isRotation(String s1, String s2) {
    return (s1.length() == s2.length()) && ((s1 + s1).indexOf(s2) != -1);
}</code>
Copier après la connexion

Implémentation Python :

<code class="python">def is_rotation(s1, s2):
    return len(s1) == len(s2) and s2 in s1 * 2</code>
Copier après la connexion

Dans cette solution, nous nous assurons d'abord que les deux chaînes sont de même longueur. Ensuite, nous concaténons s1 avec lui-même, créant ainsi une chaîne contenant à la fois la chaîne d'origine et sa version pivotée. En vérifiant si s2 existe dans cette chaîne concaténée, nous pouvons déterminer si l'une est une rotation de l'autre.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!