Di Yuvraj Chandra
E-mail

La tua corda è un palindromo? Sia che utilizzi Python, C ++ o JavaScript, utilizza uno di questi algoritmi per scoprirlo.

Si dice che una corda sia un palindromo se la corda originale e il suo rovescio sono la stessa cosa. In questo articolo, imparerai l'algoritmo per determinare se la stringa data è un palindromo o meno. Imparerai anche come implementare questo algoritmo nei linguaggi di programmazione più popolari come C ++, Python, C e JavaScript.

Esempi di Palindrome String

Di seguito sono riportati alcuni esempi di corde palindromo e non palindromo:

Algoritmo per determinare se una determinata stringa è un palindromo o meno

Gli algoritmi sono semplicemente una serie di istruzioni che vengono seguite, passo dopo passo, per fare qualcosa di utile o risolvere un problema. Puoi risolvere il problema del palindromo delle stringhe usando l'algoritmo seguente:

  1. Dichiarare una funzione che accetta la stringa data come parametro.
  2. instagram viewer
  3. Crea una variabile booleana e impostala su true. Sia la variabile bandiera.
  4. Trova la lunghezza della stringa data. Lascia che sia la lunghezza n.
  5. Converti la stringa data in minuscolo per rendere il confronto tra i caratteri senza distinzione tra maiuscole e minuscole.
  6. Inizializza la variabile a basso indice come Basso e impostalo a 0.
  7. Inizializza la variabile ad alto indice come alto e impostalo su n-1.
  8. Fai quanto segue mentre basso è minore di alto:
    • Confronta i caratteri con indice basso e indice alto.
    • Se i caratteri non corrispondono, imposta il flag su false e interrompi il ciclo.
    • Incrementa il valore di low di 1 e decrementa il valore di high di 1.
  9. Se il flag è vero alla fine della funzione, significa che la stringa data è un palindromo.
  10. Se il flag è falso alla fine della funzione, significa che la stringa data non è un palindromo.

Programma C ++ per verificare se una determinata stringa è un palindromo o meno

Di seguito è riportata l'implementazione C ++ per determinare se la stringa data è un palindromo o meno:

// Comprese le librerie
#includere
using namespace std;
// Funzione per controllare il palindromo delle stringhe
void checkPalindrome (string str)
{
// Flag per verificare se la stringa data è un palindromo
bool flag = true;
// Trovare la lunghezza della stringa
int n = str.length ();
// Conversione della stringa in minuscolo
for (int i = 0; i {
str [i] = tolower (str [i]);
}
// Inizializzazione della variabile a basso indice
int low = 0;
// Inizializzazione della variabile ad alto indice
int alto = n-1;
// Esecuzione del ciclo fino a quando high è maggiore di low
mentre (alto> basso)
{
// Se i caratteri non sono gli stessi, imposta il flag su false
// e interrompi il ciclo
if (str [alto]! = str [basso])
{
flag = false;
rompere;
}
// Incrementa la variabile dell'indice basso
low ++;
// Decrementa la variabile ad alto indice
alto--;
}
// Controlla se il flag è vero o falso
if (flag)
{
cout << "Sì, la stringa data è un palindromo" << endl;
}
altro
{
cout << "No, la stringa data non è un palindromo" << endl;
}
ritorno;
}
int main ()
{
// Scenario di test: 1
string str1 = "MUO";
checkPalindrome (str1);
// Scenario di test: 2
string str2 = "signora";
checkPalindrome (str2);
// Scenario di test: 3
string str3 = "MAKEUSEOF";
checkPalindrome (str3);
// Scenario di test: 4
string str4 = "racecar";
checkPalindrome (str4);
// Scenario di test: 5
string str5 = "mamma";
checkPalindrome (str5);
return 0;
}

Produzione:

No, la stringa data non è un palindromo 
Sì, la stringa data è un palindromo
No, la stringa data non è un palindromo
Sì, la stringa data è un palindromo
Sì, la stringa data è un palindromo

Programma Python per verificare se una determinata stringa è un palindromo o meno

Di seguito è riportata l'implementazione di Python per determinare se la stringa data è un palindromo o meno:

# Funzione per controllare il palindromo delle stringhe
def checkPalindrome (str):
# Flag per verificare se la stringa data è un palindromo
flag = True
# Trovare la lunghezza della stringa
n = len (str)
# Conversione della stringa in minuscolo
str = str. inferiore ()
# Inizializzazione della variabile a basso indice
basso = 0
# Inizializzazione della variabile ad alto indice
alto = n-1
# Esecuzione del ciclo fino a quando high è maggiore di low
mentre alto> basso:
# Se i caratteri non sono gli stessi, imposta il flag su false
# e interrompi il ciclo
se str [alto]! = str [basso]:
flag = False
rompere
# Incrementa la variabile di indice basso
basso = basso + 1
# Decrementa la variabile ad alto indice
alto = alto - 1
# Controlla se flag è vero o falso
if flag:
print ("Sì, la stringa data è un palindromo")
altro:
print ("No, la stringa data non è un palindromo")
# Scenario di test: 1
str1 = "MUO"
checkPalindrome (str1)
# Scenario di test: 2
str2 = "signora"
checkPalindrome (str2)
# Scenario di test: 3
str3 = "MAKEUSEOF"
checkPalindrome (str3)
# Scenario di test: 4
str4 = "macchina da corsa"
checkPalindrome (str4)
# Scenario di test: 5
str5 = "mamma"
checkPalindrome (str5)

Produzione:

No, la stringa data non è un palindromo
Sì, la stringa data è un palindromo
No, la stringa data non è un palindromo
Sì, la stringa data è un palindromo
Sì, la stringa data è un palindromo

Programma C per verificare se una determinata stringa è un palindromo o meno

Di seguito è riportata l'implementazione C per determinare se la stringa data è un palindromo o meno:

// Comprese le librerie
#includere
#includere
#includere
#includere
// Funzione per controllare il palindromo delle stringhe
void checkPalindrome (char str [])
{
// Flag per verificare se la stringa data è un palindromo
bool flag = true;
// Trovare la lunghezza della stringa
int n = strlen (str);
// Conversione della stringa in minuscolo
for (int i = 0; i {
str [i] = tolower (str [i]);
}
// Inizializzazione della variabile a basso indice
int low = 0;
// Inizializzazione della variabile ad alto indice
int alto = n-1;
// Esecuzione del ciclo fino a quando high è maggiore di low
mentre (alto> basso)
{
// Se i caratteri non sono gli stessi, imposta il flag su false
// e interrompi il ciclo
if (str [alto]! = str [basso])
{
flag = false;
rompere;
}
// Incrementa la variabile dell'indice basso
low ++;
// Decrementa la variabile ad alto indice
alto--;
}
// Controlla se il flag è vero o falso
if (flag)
{
printf ("Sì, la stringa data è un palindromo \ ⁠n");
}
altro
{
printf ("No, la stringa data non è un palindromo \ ⁠n");
}
ritorno;
}
int main ()
{
// Scenario di test: 1
char str1 [] = "MUO";
checkPalindrome (str1);
// Scenario di test: 2
char str2 [] = "signora";
checkPalindrome (str2);
// Scenario di test: 3
char str3 [] = "MAKEUSEOF";
checkPalindrome (str3);
// Scenario di test: 4
char str4 [] = "racecar";
checkPalindrome (str4);
// Scenario di test: 5
char str5 [] = "mamma";
checkPalindrome (str5);
return 0;
}

Produzione:

No, la stringa data non è un palindromo 
Sì, la stringa data è un palindromo
No, la stringa data non è un palindromo
Sì, la stringa data è un palindromo
Sì, la stringa data è un palindromo

Programma JavaScript per verificare se una determinata stringa è un palindromo o meno

Di seguito è riportata l'implementazione JavaScript per determinare se la stringa data è un palindromo o meno:

// Funzione per controllare il palindromo delle stringhe
function checkPalindrome (str) {
// Flag per verificare se la stringa data è un palindromo
var flag = true;
// Trovare la lunghezza della stringa
var n = str.length;
// Conversione della stringa in minuscolo
str = str.toLowerCase ();
// Inizializzazione della variabile a basso indice
var low = 0;
// Inizializzazione della variabile ad alto indice
var high = n-1;
// Esecuzione del ciclo fino a quando high è maggiore di low
while (alto> basso) {
// Se i caratteri non sono gli stessi, imposta il flag su false
// e interrompi il ciclo
if (str [alto]! = str [basso]) {
flag = false;
rompere;
}
// Incrementa la variabile dell'indice basso
low ++;
// Decrementa la variabile ad alto indice
alto--;
}
// Controlla se il flag è vero o falso
if (flag) {
console.log ("Sì, la stringa data è un palindromo");
} altro {
console.log ("No, la stringa data non è un palindromo");
}
}
// Scenario di test: 1
var str1 = "MUO";
checkPalindrome (str1);
// Scenario di test: 2
var str2 = "signora";
checkPalindrome (str2);
// Scenario di test: 3
var str3 = "MAKEUSEOF";
checkPalindrome (str3);
// Scenario di test: 4
var str4 = "macchina da corsa";
checkPalindrome (str4);
// Scenario di test: 5
var str5 = "mamma";
checkPalindrome (str5);

Produzione:

No, la stringa data non è un palindromo
Sì, la stringa data è un palindromo
No, la stringa data non è un palindromo
Sì, la stringa data è un palindromo
Sì, la stringa data è un palindromo

Impara a gestire le stringhe nella programmazione

Lavorare con le stringhe è parte integrante della programmazione. Devi sapere come usare e manipolare le stringhe in uno qualsiasi dei linguaggi di programmazione come Python, JavaScript, C ++, ecc.

Se stai cercando una lingua con cui iniziare, Python è una scelta eccellente.

E-mail
Imparare Python? Ecco come manipolare le stringhe

Usare e manipolare le stringhe in Python può sembrare difficile, ma è apparentemente semplice.

Leggi Avanti

Argomenti correlati
  • Programmazione
  • Tutorial di codifica
Circa l'autore
Yuvraj Chandra (13 articoli pubblicati)

Yuvraj è uno studente universitario in informatica presso l'Università di Delhi, in India. È appassionato di Full Stack Web Development. Quando non scrive, esplora la profondità di diverse tecnologie.

Altro di Yuvraj Chandra

Iscriviti alla nostra Newsletter

Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!

Ancora un passo…!

Conferma il tuo indirizzo e-mail nell'e-mail che ti abbiamo appena inviato.

.