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:
- Dichiarare una funzione che accetta la stringa data come parametro.
- Crea una variabile booleana e impostala su true. Sia la variabile bandiera.
- Trova la lunghezza della stringa data. Lascia che sia la lunghezza n.
- Converti la stringa data in minuscolo per rendere il confronto tra i caratteri senza distinzione tra maiuscole e minuscole.
- Inizializza la variabile a basso indice come Basso e impostalo a 0.
- Inizializza la variabile ad alto indice come alto e impostalo su n-1.
- 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.
- Se il flag è vero alla fine della funzione, significa che la stringa data è un palindromo.
- 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.
Usare e manipolare le stringhe in Python può sembrare difficile, ma è apparentemente semplice.
Leggi Avanti
- Programmazione
- Tutorial di codifica
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.
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.