2015-04-16 1 views
-3

Je ne sais pas comment faire cette question ... s'il vous plaît aiderun CircularShift programme qui imprime vrai si deux chaînes s et t spécifiés sur la ligne de commande sont des changements circulaires les uns des autres, et faux sinon

Chaîne s est un décalage circulaire de t s'il correspond lorsque les caractères sont décalés circulairement d'une position numérique quelconque; par exemple, ACTGACG est un décalage circulaire de TGACGAC, et vice versa. La détection de cette condition est importante dans l'étude des séquences génomiques . Ecrivez un programme CircularShift qui imprime vrai si deux chaînes s et t spécifiées sur la ligne de commande sont des déplacements circulaires l'un de l'autre, et faux sinon. Indice: La solution est un interligne avec indexOf(), length() et concaténation de chaîne.

J'ai besoin pour obtenir ces réponses $ java CircularShift TGACGAC ACTGACG vrai $ java CircularShift TGACGAC GACGAC faux $ java CircularShift TGACGAC TGACGAC vrai

+0

Salut, bienvenue! Pouvez-vous poster ce que vous avez essayé jusqu'à présent et qu'est-ce qui ne fonctionne pas? –

Répondre

5

Vérifiez si s et t ont la même longueur et vérifier si s se trouve dans t ajouté à lui-même.

En ce qui concerne votre exemple: Vérifiez si ACTGACG est contenu dans TGACGACTGACGAC. Dans cet exemple, vous trouverez une correspondance à la position 5.

+0

qu'est-ce que la question veut que je fasse? – momo0801