Palindrom a húrod? Függetlenül attól, hogy Python-ot, C ++ -ot vagy JavaScript-et használ, használja az algoritmusok egyikét a megismeréshez.
A karakterlánc palindromnak mondható, ha az eredeti karakterlánc és annak fordított oldala megegyezik. Ebben a cikkben megismerheti az algoritmust annak meghatározására, hogy az adott karakterlánc palindrom-e vagy sem. Azt is megtanulja, hogyan kell ezt az algoritmust a legnépszerűbb programozási nyelveken megvalósítani, mint például a C ++, a Python, a C és a JavaScript.
Példák a Palindrome húrra
Az alábbiakban néhány példa a palindrom és a nem palindrom húrokra:
Algoritmus annak meghatározására, hogy egy adott húr Palindrome-e vagy sem
Az algoritmusok egyszerűen utasítások sora, amelyeket lépésről lépésre követnek valami hasznos cselekedet vagy probléma megoldása érdekében. Az alábbi algoritmus segítségével megoldhatja a karakterlánc palindrom problémáját:
- Nyújtson be egy olyan függvényt, amely paraméterként elfogadja az adott karakterláncot.
- Hozzon létre egy logikai változót, és állítsa igazra. Legyen a változó zászló.
- Keresse meg az adott karakterlánc hosszát. Legyen a hossza n.
- Konvertálja az adott karakterláncot kisbetűvé, hogy a karakterek összehasonlítása kis- és nagybetű legyen.
- Inicializálja az alacsony indexű változót alacsony és állítsa 0-ra.
- Inicializálja a magas indexű változót magas és állítsa n-1 értékre.
- Tegye a következőket, ha az alacsony alacsonyabb, mint a magas:
- Alacsony és magas indexű karakterek összehasonlítása.
- Ha a karakterek nem egyeztek, állítsa a flag-et hamisra, és szakítsa meg a ciklust.
- Növelje az alacsony értékét 1-gyel, a magas értékét pedig 1-gyel.
- Ha a függvény végén a zászló igaz, akkor azt jelenti, hogy az adott karakterlánc palindróm.
- Ha a jelölés hamis a függvény végén, akkor azt jelenti, hogy az adott karakterlánc nem palindróma.
C ++ program annak ellenőrzésére, hogy egy adott karakterlánc Palindrome-e vagy sem
Az alábbiakban látható a C ++ megvalósítás annak megállapítására, hogy az adott karakterlánc palindrome-e vagy sem:
// Beleértve a könyvtárakat is
#include
névtér használata std;
// Funkció a palindrome karakterlánc ellenőrzésére
void checkPalindrome (string string)
{
// Megjelölés annak ellenőrzéséhez, hogy az adott karakterlánc palindrome-e
bool zászló = igaz;
// A karakterlánc hosszának megkeresése
int n = str.hossz ();
// A karakterlánc konvertálása kisbetűvé
for (int i = 0; i {
str [i] = tolóerő (str [i]);
}
// Alacsony indexű változó inicializálása
int alacsony = 0;
// Magas indexű változó inicializálása
int magas = n-1;
// A hurok futtatása a magasig nagyobb, mint alacsony
míg (magas> alacsony)
{
// Ha a karakterek nem egyeznek meg, állítsa a flag-et hamisra
// és elszakad a huroktól
ha (str [magas]! = str [alacsony])
{
zászló = hamis;
szünet;
}
// Növelje az alacsony indexű változót
alacsony ++;
// Csökkenti a magas indexű változót
magas--;
}
// Ellenőrizze, hogy a jelölés igaz vagy hamis
ha (zászló)
{
cout << "Igen, az adott karakterlánc palindróma" << endl;
}
más
{
cout << "Nem, az adott karakterlánc nem palindróma" << endl;
}
Visszatérés;
}
int main ()
{
Teszteset: 1
string str1 = "MUO";
checkPalindrome (str1);
Teszteset: 2
string str2 = "asszony";
checkPalindrome (str2);
Teszteset: 3
string str3 = "MAKEUSEOF";
checkPalindrome (str3);
Teszteset: 4
string str4 = "versenyautó";
checkPalindrome (str4);
Teszteset: 5
string str5 = "anya";
checkPalindrome (str5);
visszatér 0;
}
Kimenet:
Nem, az adott karakterlánc nem palindrom
Igen, az adott karakterlánc palindrom
Nem, az adott karakterlánc nem palindrom
Igen, az adott karakterlánc palindrom
Igen, az adott karakterlánc palindrom
Python program annak ellenőrzésére, hogy egy adott karakterlánc Palindrome-e vagy sem
Az alábbiakban bemutatjuk a Python megvalósítását annak meghatározásához, hogy az adott karakterlánc palindrome-e vagy sem:
# Funkció a palindrome karakterlánc ellenőrzésére
def checkPalindrome (str):
# Flag annak ellenőrzésére, hogy az adott karakterlánc palindrome-e
zászló = Igaz
# A karakterlánc hosszának megkeresése
n = len (str)
# A karakterlánc konvertálása kisbetűvé
str = str. alsó ()
# Alacsony indexű változó inicializálása
alacsony = 0
# Magas indexű változó inicializálása
magas = n-1
# A hurok magasig futása nagyobb, mint alacsony
míg magas> alacsony:
# Ha a karakterek nem egyeznek meg, állítsa a flag-et hamisra
# és szakítson a huroktól
ha str [magas]! = str [alacsony]:
flag = Hamis
szünet
# Növelje az alacsony indexű változót
alacsony = alacsony + 1
# Csökkenti a magas indexű változót
magas = magas - 1
# Ellenőrizze, hogy a jelölés igaz vagy hamis
ha zászló:
print ("Igen, az adott karakterlánc palindróma")
más:
print ("Nem, az adott karakterlánc nem palindróma")
# Teszteset: 1
str1 = "MUO"
checkPalindrome (str1)
# Teszteset: 2
str2 = "asszonyom"
checkPalindrome (str2)
# Teszteset: 3
str3 = "MAKEUSEOF"
checkPalindrome (str3)
# Teszteset: 4
str4 = "versenyautó"
checkPalindrome (str4)
# Teszteset: 5
str5 = "anya"
checkPalindrome (str5)
Kimenet:
Nem, az adott karakterlánc nem palindrom
Igen, az adott karakterlánc palindrom
Nem, az adott karakterlánc nem palindrom
Igen, az adott karakterlánc palindrom
Igen, az adott karakterlánc palindrom
C program annak ellenőrzésére, hogy egy adott karakterlánc Palindrome-e vagy sem
Az alábbiakban a C megvalósítás határozza meg, hogy az adott karakterlánc palindrom-e vagy sem:
// Beleértve a könyvtárakat is
#include
#include
#include
#include
// Funkció a palindrome karakterlánc ellenőrzésére
void checkPalindrome (char str [])
{
// Megjelölés annak ellenőrzéséhez, hogy az adott karakterlánc palindrome-e
bool zászló = igaz;
// A karakterlánc hosszának megkeresése
int n = strlen (str);
// A karakterlánc konvertálása kisbetűvé
for (int i = 0; i {
str [i] = tolóerő (str [i]);
}
// Alacsony indexű változó inicializálása
int alacsony = 0;
// Magas indexű változó inicializálása
int magas = n-1;
// A hurok futtatása a magasig nagyobb, mint alacsony
míg (magas> alacsony)
{
// Ha a karakterek nem egyeznek meg, állítsa a flag-et hamisra
// és elszakad a huroktól
ha (str [magas]! = str [alacsony])
{
zászló = hamis;
szünet;
}
// Növelje az alacsony indexű változót
alacsony ++;
// Csökkenti a magas indexű változót
magas--;
}
// Ellenőrizze, hogy a jelölés igaz vagy hamis
ha (zászló)
{
printf ("Igen, a megadott karakterlánc palindrome \ n");
}
más
{
printf ("Nem, az adott karakterlánc nem palindrome \ n");
}
Visszatérés;
}
int main ()
{
Teszteset: 1
char str1 [] = "MUO";
checkPalindrome (str1);
Teszteset: 2
char str2 [] = "asszonyom";
checkPalindrome (str2);
Teszteset: 3
char str3 [] = "MAKEUSEOF";
checkPalindrome (str3);
Teszteset: 4
char str4 [] = "versenyautó";
checkPalindrome (str4);
Teszteset: 5
char str5 [] = "anya";
checkPalindrome (str5);
visszatér 0;
}
Kimenet:
Nem, az adott karakterlánc nem palindrom
Igen, az adott karakterlánc palindrom
Nem, az adott karakterlánc nem palindrom
Igen, az adott karakterlánc palindrom
Igen, az adott karakterlánc palindrom
JavaScript program annak ellenőrzésére, hogy egy adott karakterlánc Palindrome-e vagy sem
Az alábbiakban bemutatjuk a JavaScript-megvalósítást annak megállapítására, hogy az adott karakterlánc palindrome-e vagy sem:
// Funkció a palindrome karakterlánc ellenőrzésére
function checkPalindrome (str) {
// Megjelölés annak ellenőrzéséhez, hogy az adott karakterlánc palindrome-e
var flag = true;
// A karakterlánc hosszának megkeresése
var n = str.hossz;
// A karakterlánc konvertálása kisbetűvé
str = str.toLowerCase ();
// Alacsony indexű változó inicializálása
var alacsony = 0;
// Magas indexű változó inicializálása
var magas = n-1;
// A hurok futtatása a magasig nagyobb, mint alacsony
míg (magas> alacsony) {
// Ha a karakterek nem egyeznek meg, állítsa a flag-et hamisra
// és elszakad a huroktól
ha (str [magas]! = str [alacsony]) {
zászló = hamis;
szünet;
}
// Növelje az alacsony indexű változót
alacsony ++;
// Csökkenti a magas indexű változót
magas--;
}
// Ellenőrizze, hogy a jelölés igaz vagy hamis
if (zászló) {
console.log ("Igen, az adott karakterlánc palindróma");
} más {
console.log ("Nem, az adott karakterlánc nem palindróma");
}
}
Teszteset: 1
var str1 = "MUO";
checkPalindrome (str1);
Teszteset: 2
var str2 = "asszony";
checkPalindrome (str2);
Teszteset: 3
var str3 = "MAKEUSEOF";
checkPalindrome (str3);
Teszteset: 4
var str4 = "versenyautó";
checkPalindrome (str4);
Teszteset: 5
var str5 = "anya";
checkPalindrome (str5);
Kimenet:
Nem, az adott karakterlánc nem palindrom
Igen, az adott karakterlánc palindrom
Nem, az adott karakterlánc nem palindrom
Igen, az adott karakterlánc palindrom
Igen, az adott karakterlánc palindrom
Megtanulják, hogyan kell kezelni a karakterláncokat a programozásban
A húrokkal végzett munka a programozás szerves része. Tudnia kell, hogyan kell használni és kezelni a karakterláncokat bármelyik programozási nyelven, például Python, JavaScript, C ++ stb.
Ha olyan nyelvet keres, amellyel kezdheti, a Python kiváló választás.
A karakterláncok használata és manipulálása a Pythonban nehéznek tűnhet, de megtévesztően egyszerű.
Olvassa el a következőt
- Programozás
- Kódolási oktatóanyagok
Yuvraj informatikus egyetemi hallgató az indiai Delhi Egyetemen. Szenvedélyes a Full Stack webfejlesztés. Amikor nem ír, a különböző technológiák mélységét kutatja.
Iratkozzon fel hírlevelünkre
Csatlakozzon hírlevelünkhöz, amely műszaki tippeket, véleményeket, ingyenes e-könyveket és exkluzív ajánlatokat tartalmaz!
Még egy lépés…!
Kérjük, erősítse meg e-mail címét az imént elküldött e-mailben.