Programme Palindrome en Python

โšก Rรฉsumรฉ intelligent

programmes palindromes dans Python Vรฉrifier si une chaรฎne de caractรจres ou un nombre se lit de la mรชme maniรจre de gauche ร  droite et de droite ร  gauche. Les mรฉthodes courantes incluent le dรฉcoupage inverse, la comparaison d'indicateurs, l'inversion de caractรจres, la correspondance de caractรจres, la rรฉcursivitรฉ et les boucles while, applicables aux valeurs textuelles et numรฉriques.

  • (I.e. Dรฉfinition: Un palindrome se lit de la mรชme faรงon de gauche ร  droite et de droite ร  gauche, qu'il s'agisse d'un mot ou d'un nombre.
  • โœ‚๏ธ Dรฉcoupage et drapeaux : Reverse la chaรฎne avec une boucle, ou dรฉtecter les incohรฉrences au plus tรดt avec un indicateur.
  • (I.e. Rรฉcursivitรฉ et boucles : Les appels rรฉcursifs et les boucles while inversent les nombres en utilisant le modulo et la division entiรจre.
  • | Rendement : La mรฉthode ร  deux pointeurs compare les extrรฉmitรฉs vers l'intรฉrieur en O(n) temps et O(1) espace.
  • ๐Ÿค– Pertinence de l'IA : La logique palindromique facilite le prรฉtraitement en TALN, les vรฉrifications ADN et la prรฉparation aux entretiens d'apprentissage automatique.

Programme Palindrome en Python

Quโ€™est-ce que le programme Palindrome Python?

Un palindrome peut รชtre dรฉfini comme une chaรฎne ou un nombre qui affiche la mรชme valeur lorsque sa position est inversรฉe. En un sens plus simple, il reste inchangรฉ une fois inversรฉ.

Example: deed, 101

Lorsque le mot inversรฉ et le mot rรฉel (un nombre ou une chaรฎne) sont comparรฉs, ils produisent le mรชme rรฉsultat.

Types de palindrome

In Python langue, Palindrome est de trois types, comme indiquรฉ ci-dessous :

  • Palindrome ร  plusieurs mots : Il s'agit d'une combinaison de plusieurs mots oรน la valeur des mots originaux et inversรฉs est la mรชme.
  • Palindrome ร  un seul mot : Il s'agit d'un seul mot oรน la valeur des mots originaux et inversรฉs est la mรชme.
  • Palindrome numรฉrique : Il s'agit d'un nombre dont les valeurs des nombres d'origine et inversรฉs sont les mรชmes. L'entrรฉe donnรฉe reste la mรชme, que ce soit de l'avant ou de l'arriรจre.

Algorithme pour un nombre palindrome dans Python

L'algorithme suivant peut รชtre appliquรฉ pour vรฉrifier le numรฉro palindrome :

ร‰tape 1) Effectuer une dรฉclaration de variable comme 'I' et lisez la variable.

ร‰tape 2) Attribuer 'I' ร  la variable temporaire j. je = j

ร‰tape 3) Effectuez la boucle avec les instructions comme indiquรฉ ci-dessous : โ€“

  • M = I % 10
  • L=L x 10 + M
  • je = je / 10

ร‰tape 4) Comparez la variable temporaire avec l. L==J.

ร‰tape 5) Imprimez le nombre comme รฉtant un palindrome si la condition est satisfaite.

ร‰tape 6) Si la condition n'est pas satisfaite, imprimez le numรฉro comme n'รฉtant pas un palindrome.

ร‰tape 7) Fin

L'algorithme ci-dessus s'applique aux nombres palindromes dans Python.

Mรฉthode 1 : Numรฉro palindrome dans Python en utilisant le dรฉcoupage vers l'arriรจre

Tranchage vers l'arriรจre Python implique gรฉnรฉralement l'utilisation d'instructions de sous-ensemble du programme d'origine. Les instructions de sous-ensemble peuvent รฉgalement utiliser des boucles. PythonLe programme palindrome de peut รชtre dรฉcoupรฉ en tranches arriรจre.

Le programme python suivant utilise une boucle arriรจre pour dรฉterminer si une chaรฎne est un palindrome.

Programme de cordes Palindrome dans Python code:

a='deed'
lena=len(a)
b=[]
for i in range(lena - 1, -1, -1):
    b.append(a[i])
rev = "".join(b)
print(a + " is: ", end="")
if a == rev:
    print("Palindrome")
else:
    print("Not Palindrome")

Sortie :

deed is: Palindrome

Code Explication:

  • Le Python le code essaie d'ajouter la chaรฎne vide b dans l'ordre inverse en utilisant la longueur de la chaรฎne principale et la Python fonction de plage.
  • La chaรฎne b est ensuite jointe ร  la chaรฎne vide rev ร  l'aide du sรฉparateur de chaรฎne ".

Mรฉthode 2 : Programme Palindrome dans Python en utilisant le drapeau

Les variables d'indicateur peuvent รชtre dรฉfinies dans Python pour identifier les palindromes. Le paramรจtre flag est initialisรฉ ร  0. Le programme suivant illustre l'utilisation du paramรจtre flag :

Python Code pour le programme Palindrome :

Pld = "deed"
m = -1
flag = 0
for char in Pld:
    if char != Pld[m]:
        flag = 1
        break
    m = m - 1
print(Pld + " is: ", end="")
if flag:
    print("Not Palindrome")
else:
    print("Palindrome")
print(flag)

Sortie :

deed is: Palindrome

0

Code Explication:

  • Le char dans Python commence par un indice 0.
  • Puisque m est initialisรฉ ร  -1, la chaรฎne est lue du verso comme un index nรฉgatif.
  • La boucle for avec l'instruction if vรฉrifie si chaque caractรจre commenรงant par l'index 0 prรฉsent dans la chaรฎne correspond ร  l'index inverse de la chaรฎne.
  • Cependant, s'il ne correspond pas, le programme initialise l'indicateur ร  1 ; sinon, il l'initialiserait ร  0.

Mรฉthode 3 : Vรฉrifiez Palindrome dans Python en inversant le caractรจre

La mรฉthode char est utilisรฉe pour inverser une chaรฎne dans ce programme palindrome dans PythonLa chaรฎne d'origine est vรฉrifiรฉe avec la chaรฎne inverse pour dรฉterminer si la chaรฎne est un palindrome ou non.

Python Programme Palindrome Code:

Base = "123"
reverse = ""
for char in Base:
    reverse = char + reverse
print("Palindrome") if Base == reverse else print("Not Palindrome")
print("Original string is: " + str(Base))
print("reverse string is: " + str(reverse))
Base = "101"
reverse = ""
for char in Base:
    reverse = char + reverse
print("Palindrome") if Base == reverse else print("Not Palindrome")
print("Original string is: " + str(Base))
print("reverse string is: " + str(reverse))
Base = "deed"
reverse = ""
for char in Base:
    reverse = char + reverse
print("Palindrome") if Base == reverse else print("Not Palindrome")
print("Original string is: " + str(Base))
print("reverse string is: " + str(reverse))

Sortie :

Not Palindrome
The original string is: 123
The reverse string is: 321
Palindrome
The original string is: 101
The reverse string is: 101
Palindrome
The original string is: the deed
The reverse string is: the deed

Code Explication:

  • PythonLa fonction str permet de convertir le format de valeur numรฉrique au format chaรฎne. Le programme vรฉrifie d'abord si la valeur 123 est un palindrome ou non.
  • Il vรฉrifie ensuite la valeur 101 et la valeur de chaรฎne de l'acte.
  • Le code vรฉrifie que la valeur est un palindrome pour les formats numรฉriques et de chaรฎne.

Mรฉthode 4 : Comment enregistrer Palindrome dans Python utiliser la correspondance de caractรจres

Dans cette mรฉthode palindrome, le programme vรฉrifie si chaque caractรจre de la chaรฎne correspond ร  la chaรฎne inversรฉe en utilisant la boucle for, la fonction range et la fonction Len.

Python code:

def PalindromeComparator(original):
    for i in range(0, len(original)):
        if original[i] != original[len(original) - i - 1]:
            return False
            return True
Base = "deed"
print("Palindrome") if PalindromeComparator(Base) else print("Not Palindrome")

Sortie :

Not Palindrome

Code Explication:

  • Une fonction dรฉfinie par l'utilisateur intitulรฉe Palindrome Comparator vรฉrifie si la valeur est une chaรฎne ou non.
  • Le programme compare la chaรฎne originale et son inverse en utilisant les critรจres original[i]!= original[len(original) โ€“ i โ€“ 1].
  • Le programme ci-dessus utilise la technique de la longueur pour dรฉterminer la longueur de la chaรฎne.

Mรฉthode 5 : Palindrome dans Python utiliser la rรฉcursivitรฉ

In Python, la rรฉcursivitรฉ signifie que la fonction s'appelle ร  plusieurs reprises et selon un ensemble spรฉcifique de critรจres. De cette faรงon, le problรจme peut รชtre dรฉcomposรฉ en problรจmes plus petits en utilisant la mรชme structure fonctionnelle. En utilisant la logique de programmation rรฉcursive, les chaรฎnes palindromes peuvent รฉgalement รชtre vรฉrifiรฉes

Python code:

def palcomprec(number, oppo):
    if number == 0:
        return oppo
    remainder = int(number % 10)
    oppo = (oppo * 10) + remainder
    return palcomprec(int(number / 10), oppo)
Base = 12321
reverse = 0
reverse = palcomprec(Base, reverse)
print(str(Base) + " is: ", end="")
print("Palindrome") if reverse == Base else print("Not Palindrome")

Sortie :

12321 is: Palindrome

Code Explication:

  • Le programme utilise une fonction dรฉfinie par l'utilisateur qui s'appelle rรฉcursivement.
  • Le nombre d'origine est dรฉcomposรฉ et sa valeur rรฉsiduelle est ajoutรฉe ร  la valeur opposรฉe.
  • La valeur opposรฉe est d'abord multipliรฉe par 10 avant d'รชtre ajoutรฉe ร  la valeur restante.

Mรฉthode 6 : Comment utiliser la boucle While pour vรฉrifier le palindrome

Une boucle while effectue l'exรฉcution du code de maniรจre itรฉrative jusqu'ร  ce que la condition appliquรฉe soit vraie.

  • La mรฉthode itรฉrative peut รชtre utilisรฉe pour vรฉrifier si la valeur entiรจre est palindrome.
  • Le Python le programme utilise des nombres temporaires et des opรฉrateurs modulo.

Python code:

original = 101
temporary = original
reverse = 0
while temporary > 0:
    remainder = temporary % 10
    reverse = (reverse * 10) + remainder
    temporary = temporary // 10
if original == reverse:
  print('Palindrome')
else:
  print("Not Palindrome")

Sortie :

Palindrome

Code Explication:

  • Le programme utilise une boucle while qui vรฉrifie si le nombre temporaire est infรฉrieur ร  zรฉro.
  • L'opรฉrateur modulo calcule le reste du nombre d'origine.
  • Le nombre initial est divisรฉ par 10.
  • Le paramรจtre inverse est calculรฉ en multipliant par 10.
  • Le nombre rรฉsultant est ajoutรฉ au rรฉsidu.
  • Le programme ci-dessus vรฉrifie le numรฉro d'origine et le numรฉro inversรฉ pour le classer comme palindrome ou non.

FAQ

Comparez la valeur avec son inverse en utilisant `s == s[::-1]`, aprรจs avoir converti les nombres avec `str()`. Si les directions correspondent, il s'agit d'un palindrome.

La mรฉthode ร  deux pointeurs permet d'รฉconomiser de la mรฉmoire en temps O(n) et en espace O(1), mais l'inversion de tranche est gรฉnรฉralement plus rapide en C.Python.

Un pointeur se trouve au dรฉbut, l'autre ร  la fin ; ils se comparent vers l'intรฉrieur. L'appariement des paires jusqu'ร  ce qu'elles se rejoignent confirme un palindrome.

Convertissez le texte en minuscules et ne conservez que les caractรจres alphanumรฉriques avec isalnum(), puis comparez-le ร  son inverse. L'espacement et la casse n'ont plus d'importance.

Reverse une chaรฎne avec slice s[::-1], reversed() plus "".join(), ou une boucle d'ajout en dรฉbut de chaรฎne, puis comparez-la ร  l'original.

Oui. Un caractรจre unique et une chaรฎne vide se lisent de la mรชme maniรจre ร  l'envers, donc s == s[::-1] renvoie True.

RevLa logique gรฉnรฉrale sous-tend le prรฉtraitement du NLP, les vรฉrifications bioinformatiques de l'ADN et l'ingรฉnierie des caractรฉristiques. Des bibliothรจques comme NumPy Vectoriser ces tests de symรฉtrie pour l'apprentissage automatique.

Oui. GitHub Copilot et les assistants IA similaires gรฉnรจrent des versions par dรฉcoupage, ร  deux pointeurs, rรฉcursives ou en boucle ร  partir d'une invite. Il est toujours conseillรฉ d'examiner les cas limites au prรฉalable.

Rรฉsumez cet article avec :