İpiniz bir palindrom mu? Python, C ++ veya JavaScript kullanıyor olsanız da, öğrenmek için bu algoritmalardan birini kullanın.
Orijinal dize ve tersi aynıysa, bir dizenin bir palindrom olduğu söylenir. Bu makalede, verilen dizenin bir palindrom olup olmadığını belirleyen algoritma hakkında bilgi edineceksiniz. Ayrıca bu algoritmanın C ++, Python, C ve JavaScript gibi en popüler programlama dillerinde nasıl uygulanacağını da öğreneceksiniz.
Palindrome String Örnekleri
Aşağıda, palindrom ve palindrom olmayan dizelerin bazı örnekleri verilmiştir:
Verilen Bir Dizenin Palindrom Olup Olmadığını Belirleyen Algoritma
Algoritmalar, yararlı bir şey yapmak veya bir sorunu çözmek için adım adım izlenen bir dizi talimattır. String palindrom problemini aşağıdaki algoritmayı kullanarak çözebilirsiniz:
- Verilen dizeyi parametre olarak kabul eden bir işlev bildirin.
- Bir boole değişkeni oluşturun ve bunu true olarak ayarlayın. Değişken olsun bayrak.
- Verilen dizenin uzunluğunu bulun. Uzunluk olsun n.
- Karakterler arasındaki karşılaştırmayı büyük / küçük harfe duyarlı hale getirmek için verilen dizeyi küçük harfe dönüştürün.
- Düşük indeks değişkenini şu şekilde başlatın: düşük ve 0 olarak ayarlayın.
- Yüksek indeks değişkenini şu şekilde başlatın: yüksek ve n-1 olarak ayarlayın.
- Aşağıdakileri düşük yüksekten düşükken yapın:
- Düşük indeks ve yüksek indeksteki karakterleri karşılaştırın.
- Karakterler eşleşmediyse, bayrağı yanlış olarak ayarlayın ve döngüyü kırın.
- Düşük değerini 1 artırın ve yüksek değerini 1 azaltın.
- İşlevin sonunda bayrak doğruysa, verilen dizenin bir palindrom olduğunu belirtir.
- İşlevin sonunda bayrak yanlışsa, verilen dizenin bir palindrom olmadığını belirtir.
Verilen Dizenin Palindrom Olup Olmadığını Kontrol Etmek İçin C ++ Programı
Aşağıda, verilen dizenin bir palindrom olup olmadığını belirlemek için C ++ uygulaması verilmiştir:
// Kitaplıklar dahil
#Dahil etmek
ad alanı std kullanarak;
// Dizge palindromunu kontrol etme işlevi
void checkPalindrome (string str)
{
// Verilen dizenin bir palindrom olup olmadığını kontrol etmek için işaretleyin
bool bayrağı = doğru;
// Dizenin uzunluğunu bulma
int n = str.length ();
// Dizeyi küçük harfe dönüştürme
için (int i = 0; i {
str [i] = daha düşük (str [i]);
}
// Düşük indisli değişken başlatılıyor
int düşük = 0;
// Yüksek indeksli değişken başlatılıyor
int yüksek = n-1;
// Döngüyü yüksek, düşükten büyük olana kadar çalıştırmak
while (yüksek> düşük)
{
// Karakterler aynı değilse, bayrağı yanlış olarak ayarlayın
// ve döngüden kop
eğer (str [yüksek]! = str [düşük])
{
bayrak = yanlış;
kırmak;
}
// Düşük endeks değişkenini artırın
düşük ++;
// Yüksek indeks değişkenini azaltın
yüksek--;
}
// bayrağın doğru mu yanlış mı olduğunu kontrol edin
eğer (bayrak)
{
cout << "Evet, verilen dizge bir palindrom" << endl;
}
Başka
{
cout << "Hayır, verilen dizge bir palindrom değil" << endl;
}
dönüş;
}
int main ()
{
// Test durumu: 1
string str1 = "MUO";
checkPalindrome (str1);
// Test durumu: 2
string str2 = "madam";
checkPalindrome (str2);
// Test durumu: 3
string str3 = "MAKEUSEOF";
checkPalindrome (str3);
// Test durumu: 4
string str4 = "yarış arabası";
checkPalindrome (str4);
// Test durumu: 5
string str5 = "anne";
checkPalindrome (str5);
dönüş 0;
}
Çıktı:
Hayır, verilen dize bir palindrom değil
Evet, verilen dize bir palindrom
Hayır, verilen dize bir palindrom değil
Evet, verilen dize bir palindrom
Evet, verilen dize bir palindrom
Verilen Bir Dizenin Palindrome Olup Olmadığını Kontrol Etmek İçin Python Programı
Aşağıda, verilen dizenin bir palindrom olup olmadığını belirlemek için Python uygulaması verilmiştir:
# String palindromunu kontrol etme işlevi
def checkPalindrome (str):
# Verilen dizenin bir palindrom olup olmadığını kontrol etmek için işaretleyin
flag = True
# Dizenin uzunluğunu bulma
n = uzunluk (str)
# Dizeyi küçük harfe dönüştürme
str = str.lower ()
# Düşük indeks değişkeninin başlatılması
düşük = 0
# Yüksek indeks değişkeninin başlatılması
yüksek = n-1
# Döngüyü yüksek, alçaktan büyük olana kadar çalıştırma
yüksek> düşük iken:
# Karakterler aynı değilse, bayrağı yanlış olarak ayarlayın
# ve döngüden kop
str [yüksek]! = str [düşük] ise:
bayrak = Yanlış
kırmak
# Düşük endeks değişkenini artırın
düşük = düşük + 1
# Yüksek indeks değişkenini azaltın
yüksek = yüksek - 1
# Bayrağın doğru mu yanlış mı olduğunu kontrol edin
eğer bayrak:
print ("Evet, verilen dize bir palindromdur")
Başka:
print ("Hayır, verilen dize bir palindrom değil")
# Test durumu: 1
str1 = "MUO"
checkPalindrome (str1)
# Test durumu: 2
str2 = "madam"
checkPalindrome (str2)
# Test durumu: 3
str3 = "KULLANIM"
checkPalindrome (str3)
# Test durumu: 4
str4 = "yarış arabası"
checkPalindrome (str4)
# Test durumu: 5
str5 = "anne"
checkPalindrome (str5)
Çıktı:
Hayır, verilen dize bir palindrom değil
Evet, verilen dize bir palindrom
Hayır, verilen dize bir palindrom değil
Evet, verilen dize bir palindrom
Evet, verilen dize bir palindrom
Verilen Dizenin Palindrom Olup Olmadığını Kontrol Etmek İçin C Programı
Aşağıda, verilen dizenin bir palindrom olup olmadığını belirlemek için C uygulaması verilmiştir:
// Kitaplıklar dahil
#Dahil etmek
#Dahil etmek
#Dahil etmek
#Dahil etmek
// Dizge palindromunu kontrol etme işlevi
void checkPalindrome (char str [])
{
// Verilen dizenin bir palindrom olup olmadığını kontrol etmek için işaretleyin
bool bayrağı = doğru;
// Dizenin uzunluğunu bulma
int n = strlen (str);
// Dizeyi küçük harfe dönüştürme
için (int i = 0; i {
str [i] = daha düşük (str [i]);
}
// Düşük indisli değişken başlatılıyor
int düşük = 0;
// Yüksek indeksli değişken başlatılıyor
int yüksek = n-1;
// Döngüyü yüksek, düşükten büyük olana kadar çalıştırmak
while (yüksek> düşük)
{
// Karakterler aynı değilse, bayrağı yanlış olarak ayarlayın
// ve döngüden kop
eğer (str [yüksek]! = str [düşük])
{
bayrak = yanlış;
kırmak;
}
// Düşük endeks değişkenini artırın
düşük ++;
// Yüksek indeks değişkenini azaltın
yüksek--;
}
// bayrağın doğru mu yanlış mı olduğunu kontrol edin
eğer (bayrak)
{
printf ("Evet, verilen dizge bir palindrom \ n");
}
Başka
{
printf ("Hayır, verilen dizge bir palindrom değil \ n");
}
dönüş;
}
int main ()
{
// Test durumu: 1
char str1 [] = "MUO";
checkPalindrome (str1);
// Test durumu: 2
char str2 [] = "madam";
checkPalindrome (str2);
// Test durumu: 3
char str3 [] = "KULLANIM";
checkPalindrome (str3);
// Test durumu: 4
char str4 [] = "yarış arabası";
checkPalindrome (str4);
// Test durumu: 5
char str5 [] = "anne";
checkPalindrome (str5);
dönüş 0;
}
Çıktı:
Hayır, verilen dize bir palindrom değil
Evet, verilen dize bir palindrom
Hayır, verilen dize bir palindrom değil
Evet, verilen dize bir palindrom
Evet, verilen dize bir palindrom
Verilen Dizenin Palindrome Olup Olmadığını Kontrol Etmek İçin JavaScript Programı
Aşağıda, verilen dizenin bir palindrom olup olmadığını belirlemek için JavaScript uygulaması verilmiştir:
// Dizge palindromunu kontrol etme işlevi
function checkPalindrome (str) {
// Verilen dizenin bir palindrom olup olmadığını kontrol etmek için işaretleyin
var bayrak = true;
// Dizenin uzunluğunu bulma
var n = str.length;
// Dizeyi küçük harfe dönüştürme
str = str.toLowerCase ();
// Düşük indisli değişken başlatılıyor
var düşük = 0;
// Yüksek indeksli değişken başlatılıyor
var yüksek = n-1;
// Döngüyü yüksek, düşükten büyük olana kadar çalıştırmak
while (yüksek> düşük) {
// Karakterler aynı değilse, bayrağı yanlış olarak ayarlayın
// ve döngüden kop
eğer (str [yüksek]! = str [düşük]) {
bayrak = yanlış;
kırmak;
}
// Düşük endeks değişkenini artırın
düşük ++;
// Yüksek indeks değişkenini azaltın
yüksek--;
}
// bayrağın doğru mu yanlış mı olduğunu kontrol edin
if (bayrak) {
console.log ("Evet, verilen dize bir palindromdur");
} Başka {
console.log ("Hayır, verilen dize bir palindrom değil");
}
}
// Test durumu: 1
var str1 = "MUO";
checkPalindrome (str1);
// Test durumu: 2
var str2 = "madam";
checkPalindrome (str2);
// Test durumu: 3
var str3 = "KULLANIM";
checkPalindrome (str3);
// Test durumu: 4
var str4 = "yarış arabası";
checkPalindrome (str4);
// Test durumu: 5
var str5 = "anne";
checkPalindrome (str5);
Çıktı:
Hayır, verilen dize bir palindrom değil
Evet, verilen dize bir palindrom
Hayır, verilen dize bir palindrom değil
Evet, verilen dize bir palindrom
Evet, verilen dize bir palindrom
Programlamada Dizelerle Nasıl Başa Çıkılacağını Öğrenin
Dizelerle çalışmak, programlamanın ayrılmaz bir parçasıdır. Python, JavaScript, C ++ vb. Gibi programlama dillerinden herhangi birinde dizeleri nasıl kullanacağınızı ve işleyeceğinizi bilmelisiniz.
Başlamak için bir dil arıyorsanız, Python mükemmel bir seçimdir.
Python'da dizeleri kullanmak ve değiştirmek zor görünebilir, ancak aldatıcı bir şekilde basittir.
Sonrakini Oku
- Programlama
- Kodlama Eğitimleri
Yuvraj, Hindistan Delhi Üniversitesi'nde Bilgisayar Bilimleri lisans öğrencisidir. Full Stack Web Geliştirme konusunda tutkulu. Yazmadığı zamanlarda, farklı teknolojilerin derinliğini keşfediyor.
Haber bültenimize abone ol
Teknoloji ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için haber bültenimize katılın!
Bir adım daha…!
Lütfen size az önce gönderdiğimiz e-postadaki e-posta adresinizi onaylayın.