Написао Иуврај Цхандра
Емаил

Да ли је ваша жица палиндром? Без обзира да ли користите Питхон, Ц ++ или ЈаваСцрипт, користите један од ових алгоритама да бисте сазнали.

За струну се каже да је палиндром ако су оригинална жица и њена наличје исти. У овом чланку ћете научити о алгоритму за одређивање да ли је дати низ палиндром или није. Такође ћете научити како да примените овај алгоритам у најпопуларнијим програмским језицима као што су Ц ++, Питхон, Ц и ЈаваСцрипт.

Примери палиндромске жице

Испод су неки примери палиндромских и непалиндромских жица:

Алгоритам за одређивање да ли је дати низ палиндром или није

Алгоритми су једноставно низ упутстава која се, корак по корак, следе како би се учинило нешто корисно или решио проблем. Проблем палиндрома низа можете решити помоћу доњег алгоритма:

  1. Прогласите функцију која прихвата дати низ као параметар.
  2. Направите логичку променљиву и поставите је на труе. Нека променљива буде застава.
  3. Пронађите дужину датог низа. Нека дужина буде н.
  4. Претворите дати низ у мала слова да бисте направили поређење између знакова који не разликују велика и мала слова.
  5. Иницијализујте променљиву ниског индекса као ниска и подесите га на 0.
  6. Иницијализујте променљиву високог индекса као високо и подесите га на н-1.
  7. Урадите следеће док је ниско мање од високо:
    • Упоредите знакове при ниском и високом индексу.
    • Ако се знакови не подударају, поставите заставицу на фалсе и прекините петљу.
    • Повећајте вредност ниског за 1 и смањите вредност високог за 1.
  8. Ако је застава тачна на крају функције, то значи да је дати низ палиндром.
  9. Ако је заставица нетачна на крају функције, то значи да дати низ није палиндром.

Ц ++ програм за проверу да ли је дати низ палиндром или није

Испод је примена Ц ++ да би се утврдило да ли је дати низ палиндром или не:

// Укључујући библиотеке
#инцлуде
коришћење простора имена стд;
// Функција за проверу палиндрома низа
воид цхецкПалиндроме (стринг стр)
{
// Означи да провери да ли је дати низ палиндром
застава боол = тачно;
// Проналажење дужине низа
инт н = стр.ленгтх ();
// Претварање низа у мала слова
за (инт и = 0; и {
стр [и] = толовер (стр [и]);
}
// Иницијализација променљиве ниског индекса
инт ниско = 0;
// Иницијализација променљиве високог индекса
инт високо = н-1;
// Покретање петље док висока није већа од ниске
док (високо> ниско)
{
// Ако знакови нису исти, поставите заставицу на фалсе
// и прекид из петље
иф (стр [високо]! = стр [ниско])
{
застава = нетачно;
пауза;
}
// Повећавање променљиве ниског индекса
низак ++;
// Смањивање променљиве високог индекса
високо--;
}
// Проверите да ли је застава тачна или нетачна
ако (застава)
{
цоут << "Да, дати низ је палиндром" << ендл;
}
иначе
{
цоут << "Не, задати низ није палиндром" << ендл;
}
повратак;
}
инт маин ()
{
// Тест пример: 1
стринг стр1 = "МУО";
цхецкПалиндроме (стр1);
// Тест пример: 2
стринг стр2 = "госпођо";
цхецкПалиндроме (стр2);
// Тест пример: 3
стринг стр3 = "МАКЕУСЕОФ";
цхецкПалиндроме (стр3);
// Тест пример: 4
стринг стр4 = "тркачки аутомобил";
цхецкПалиндроме (стр4);
// Тест пример: 5
стринг стр5 = "мама";
цхецкПалиндроме (стр5);
ретурн 0;
}

Излаз:

Не, дата жица није палиндром 
Да, дата жица је палиндром
Не, дата жица није палиндром
Да, дата жица је палиндром
Да, дата жица је палиндром

Питхон програм за проверу да ли је дати низ палиндром или није

Испод је примена Питхона да би се утврдило да ли је дати низ палиндром или не:

# Функција за проверу низа палиндрома
деф цхецкПалиндроме (стр):
# Означи да провериш да ли је дати низ палиндром
застава = Тачно
# Проналажење дужине низа
н = лен (стр)
# Претварање низа у мала слова
стр = стр.ловер ()
# Иницијализација променљиве ниског индекса
ниска = 0
# Иницијализација променљиве високог индекса
високо = н-1
# Покретање петље док висока није већа од ниске
док је висока> ниска:
# Ако знакови нису исти, поставите заставицу на фалсе
# и прекинути из петље
ако је стр [висока]! = стр [ниска]:
застава = Нетачно
пауза
# Повећајте променљиву ниског индекса
низак = низак + 1
# Смањите променљиву високог индекса
високо = високо - 1
# Проверите да ли је застава тачна или нетачна
ако застава:
принт ("Да, дати низ је палиндром")
иначе:
принт ("Не, задати низ није палиндром")
# Тест случај: 1
стр1 = "МУО"
цхецкПалиндроме (стр1)
# Тест случај: 2
стр2 = "госпођо"
цхецкПалиндроме (стр2)
# Тест случај: 3
стр3 = "МАКЕУСЕОФ"
цхецкПалиндроме (стр3)
# Тест случај: 4
стр4 = "тркачки аутомобил"
цхецкПалиндроме (стр4)
# Тест случај: 5
стр5 = "мама"
цхецкПалиндроме (стр5)

Излаз:

Не, дата жица није палиндром
Да, дата жица је палиндром
Не, дата жица није палиндром
Да, дата жица је палиндром
Да, дата жица је палиндром

Ц програм за проверу да ли је дати низ палиндром или није

Испод је примена Ц да би се утврдило да ли је дати низ палиндром или не:

// Укључујући библиотеке
#инцлуде
#инцлуде
#инцлуде
#инцлуде
// Функција за проверу палиндрома низа
воид цхецкПалиндроме (цхар стр [])
{
// Означи да провери да ли је дати низ палиндром
застава боол = тачно;
// Проналажење дужине низа
инт н = стрлен (стр);
// Претварање низа у мала слова
за (инт и = 0; и {
стр [и] = толовер (стр [и]);
}
// Иницијализација променљиве ниског индекса
инт ниско = 0;
// Иницијализација променљиве високог индекса
инт високо = н-1;
// Покретање петље док висока није већа од ниске
док (високо> ниско)
{
// Ако знакови нису исти, поставите заставицу на фалсе
// и прекид из петље
иф (стр [високо]! = стр [ниско])
{
застава = нетачно;
пауза;
}
// Повећавање променљиве ниског индекса
низак ++;
// Смањивање променљиве високог индекса
високо--;
}
// Проверите да ли је застава тачна или нетачна
ако (застава)
{
принтф ("Да, дати низ је палиндром \ ⁠н");
}
иначе
{
принтф ("Не, задати низ није палиндром \ ⁠н");
}
повратак;
}
инт маин ()
{
// Тест пример: 1
цхар стр1 [] = "МУО";
цхецкПалиндроме (стр1);
// Тест пример: 2
цхар стр2 [] = "госпођо";
цхецкПалиндроме (стр2);
// Тест пример: 3
цхар стр3 [] = "МАКЕУСЕОФ";
цхецкПалиндроме (стр3);
// Тест пример: 4
цхар стр4 [] = "тркачки аутомобил";
цхецкПалиндроме (стр4);
// Тест пример: 5
цхар стр5 [] = "мама";
цхецкПалиндроме (стр5);
ретурн 0;
}

Излаз:

Не, дата жица није палиндром 
Да, дата жица је палиндром
Не, дата жица није палиндром
Да, дата жица је палиндром
Да, дата жица је палиндром

ЈаваСцрипт програм за проверу да ли је дати низ палиндром или није

Испод је имплементација ЈаваСцрипт-а да би се утврдило да ли је дати низ палиндром или не:

// Функција за проверу палиндрома низа
фунцтион цхецкПалиндроме (стр) {
// Означи да провери да ли је дати низ палиндром
вар застава = тачно;
// Проналажење дужине низа
вар н = стр.ленгтх;
// Претварање низа у мала слова
стр = стр.тоЛоверЦасе ();
// Иницијализација променљиве ниског индекса
вар ниско = 0;
// Иницијализација променљиве високог индекса
вар високо = н-1;
// Покретање петље док висока није већа од ниске
док (високо> ниско) {
// Ако знакови нису исти, поставите заставицу на фалсе
// и прекид из петље
иф (стр [високо]! = стр [ниско]) {
застава = нетачно;
пауза;
}
// Повећавање променљиве ниског индекса
низак ++;
// Смањивање променљиве високог индекса
високо--;
}
// Проверите да ли је застава тачна или нетачна
иф (флаг) {
цонсоле.лог („Да, дати низ је палиндром“);
} остало {
цонсоле.лог ("Не, задати низ није палиндром");
}
}
// Тест пример: 1
вар стр1 = "МУО";
цхецкПалиндроме (стр1);
// Тест пример: 2
вар стр2 = "госпођо";
цхецкПалиндроме (стр2);
// Тест пример: 3
вар стр3 = "МАКЕУСЕОФ";
цхецкПалиндроме (стр3);
// Тест пример: 4
вар стр4 = "тркачки аутомобил";
цхецкПалиндроме (стр4);
// Тест пример: 5
вар стр5 = "мама";
цхецкПалиндроме (стр5);

Излаз:

Не, дата жица није палиндром
Да, дата жица је палиндром
Не, дата жица није палиндром
Да, дата жица је палиндром
Да, дата жица је палиндром

Научите како се носити са жицама у програмирању

Рад са низовима је саставни део програмирања. Морате знати како користити и манипулисати низовима у било ком од програмских језика као што су Питхон, ЈаваСцрипт, Ц ++ итд.

Ако тражите језик за почетак, Питхон је одличан избор.

Емаил
Учите Питхон? Ево како манипулисати жицама

Коришћење и манипулација низовима у Питхону може изгледати тешко, али је варљиво једноставно.

Прочитајте следеће

Повезане теме
  • Програмирање
  • Водичи за кодирање
О аутору
Иуврај Цхандра (Објављено 13 чланака)

Иуврај је студент основних студија рачунарства на Универзитету у Делхију у Индији. Одушевљен је Фулл Стацк веб развојем. Када не пише, истражује дубину различитих технологија.

Још од Иуврај Цхандра

Претплатите се на наш билтен

Придружите се нашем билтену за техничке савете, прегледе, бесплатне е-књиге и ексклузивне понуде!

Још један корак…!

Молимо потврдите своју адресу е-поште у е-поруци коју смо вам управо послали.

.