Kā pārbaudīt, vai divas virknes ir viena otras diagrammas

Kā pārbaudīt, vai divas virknes ir viena otras diagrammas

Anagramma ir virkne, kas izveidota, pārkārtojot citas virknes burtus. Pārbaudīt, vai divas virknes ir viena otras anagrammas, var likties grūti, taču tas ir tikai nedaudz sarežģīti un maldinoši vienkārši. Šajā rakstā jūs uzzināsit, kā pārbaudīt, vai divas virknes ir viena otras anagrammas, izmantojot C ++, Python un JavaScript.





Paziņojums par problēmu

Jums ir dotas divas virknes s1 un s2, jums jāpārbauda, ​​vai abas virknes ir viena otras anagrammas.





1. piemērs : Ļaujiet s1 = 'radošs' un s2 = 'reaģējošs'.





Tā kā otro virkni var veidot, pārkārtojot pirmās virknes burtus un otrādi, līdz ar to abas virknes ir viena otras anagrammas.

2. piemērs : Ļaujiet s1 = 'Pīters Pipers noplūca marinētu papriku' un s2 = 'Marinētu piparu daiviņa, kuru nolasīja Pīters Pipers'.



Tā kā otro virkni nevar izveidot, pārkārtojot pirmās virknes burtus un otrādi, abas virknes nav viena otras anagrammas.

Process, lai pārbaudītu, vai divas virknes ir viena otras diagrammas

Lai pārbaudītu, vai abas virknes ir viena otras anagrammas, varat izmantot tālāk norādīto pieeju.





  1. Salīdziniet abu virkņu garumu.
  2. Ja abu virkņu garums nav vienāds, tas nozīmē, ka tās nevar būt viena otras anagrammas. Tādējādi atgrieziet nepatiesu.
  3. Ja abu virkņu garums ir vienāds, turpiniet.
  4. Kārtojiet abas virknes.
  5. Salīdziniet abas sakārtotās virknes.
  6. Ja abas sakārtotās virknes ir vienādas, tas nozīmē, ka tās ir viena otras anagrammas. Tādējādi atgriezieties taisnība.
  7. Ja abas sakārtotās virknes ir atšķirīgas, tas nozīmē, ka tās nav viena otras anagrammas. Tādējādi atgrieziet nepatiesu.

Saistīts: Kā pārbaudīt, vai virkne ir palindroms

C ++ programma, lai pārbaudītu, vai divas virknes ir viena otras diagrammas

Zemāk ir C ++ programma, lai pārbaudītu, vai divas virknes ir viena otras anagrammas:





#include
using namespace std;
bool checkAnagrams(string s1, string s2)
{
int size1 = s1.length();
int size2 = s2.length();
// If the length of both strings are not the same,
// it means they can't be anagrams of each other.
// Thus, return false.
if (size1 != size2)
{
return false;
}
sort(s1.begin(), s1.end());
sort(s2.begin(), s2.end());
for (int i = 0; i {
if (s1[i] != s2[i])
{
return false;
}
}
return true;
}
int main()
{
string s1 = 'listen';
string s2 = 'silent';
cout << 'String 1: ' << s1 << endl;
cout << 'String 2: ' << s2 << endl;
if(checkAnagrams(s1, s2))
{
cout << 'Yes, the two strings are anagrams of each other' << endl;
}
else
{
cout << 'No, the two strings are not anagrams of each other' << endl;
}
string s3 = 'Welcome to MUO';
string s4 = 'MUO to Welcome';
cout << 'String 3: ' << s3 << endl;
cout << 'String 4: ' << s4 << endl;
if(checkAnagrams(s3, s4))
{
cout << 'Yes, the two strings are anagrams of each other' << endl;
}
else
{
cout << 'No, the two strings are not anagrams of each other' << endl;
}
string s5 = 'Peter Piper picked a peck of pickled peppers';
string s6 = 'A peck of pickled peppers Peter Piper picked';
cout << 'String 5: ' << s5 << endl;
cout << 'String 6: ' << s6 << endl;
if(checkAnagrams(s5, s6))
{
cout << 'Yes, the two strings are anagrams of each other' << endl;
}
else
{
cout << 'No, the two strings are not anagrams of each other' << endl;
}
string s7 = 'She sells seashells by the seashore';
string s8 = 'seashells by the seashore';
cout << 'String 7: ' << s7 << endl;
cout << 'String 8: ' << s8 << endl;
if(checkAnagrams(s7, s8))
{
cout << 'Yes, the two strings are anagrams of each other' << endl;
}
else
{
cout << 'No, the two strings are not anagrams of each other' << endl;
}
string s9 = 'creative';
string s10 = 'reactive';
cout << 'String 9: ' << s9 << endl;
cout << 'String 10: ' << s10 << endl;
if(checkAnagrams(s9, s10))
{
cout << 'Yes, the two strings are anagrams of each other' << endl;
}
else
{
cout << 'No, the two strings are not anagrams of each other' << endl;
}
return 0;
}

Izeja:

String 1: listen
String 2: silent
Yes, the two strings are anagrams of each other
String 3: Welcome to MUO
String 4: MUO to Welcome
Yes, the two strings are anagrams of each other
String 5: Peter Piper picked a peck of pickled peppers
String 6: A peck of pickled peppers Peter Piper picked
No, the two strings are not anagrams of each other
String 7: She sells seashells by the seashore
String 8: seashells by the seashore
No, the two strings are not anagrams of each other
String 9: creative
String 10: reactive
Yes, the two strings are anagrams of each other

Saistīts: Kā skaitīt virknes dotās rakstzīmes gadījumus

Python programma, lai pārbaudītu, vai divas virknes ir viena otras diagrammas

Zemāk ir programma Python, lai pārbaudītu, vai divas virknes ir viena otras anagrammas:

def checkAnagrams(s1, s2):
size1 = len(s1)
size2 = len(s2)
# If the length of both strings are not the same,
# it means they can't be anagrams of each other.
# Thus, return false.
if size1 != size2:
return 0
s1 = sorted(s1)
s2 = sorted(s2)
for i in range(0, size1):
if s1[i] != s2[i]:
return False
return True

s1 = 'listen'
s2 = 'silent'
print('String 1: ', s1)
print('String 2: ', s2)
if(checkAnagrams(s1, s2)):
print('Yes, the two strings are anagrams of each other')
else:
print('No, the two strings are not anagrams of each other')
s3 = 'Welcome to MUO'
s4 = 'MUO to Welcome'
print('String 3: ', s3)
print('String 4: ', s4)
if(checkAnagrams(s3, s4)):
print('Yes, the two strings are anagrams of each other')
else:
print('No, the two strings are not anagrams of each other')
s5 = 'Peter Piper picked a peck of pickled peppers'
s6 = 'A peck of pickled peppers Peter Piper picked'
print('String 5: ', s5)
print('String 6: ', s6)
if(checkAnagrams(s5, s6)):
print('Yes, the two strings are anagrams of each other')
else:
print('No, the two strings are not anagrams of each other')
s7 = 'She sells seashells by the seashore'
s8 = 'seashells by the seashore'
print('String 7: ', s7)
print('String 8: ', s8)
if(checkAnagrams(s7, s8)):
print('Yes, the two strings are anagrams of each other')
else:
print('No, the two strings are not anagrams of each other')
s9 = 'creative'
s10 = 'reactive'
print('String 9: ', s9)
print('String 10: ', s10)
if(checkAnagrams(s9, s10)):
print('Yes, the two strings are anagrams of each other')
else:
print('No, the two strings are not anagrams of each other')

Izeja:

String 1: listen
String 2: silent
Yes, the two strings are anagrams of each other
String 3: Welcome to MUO
String 4: MUO to Welcome
Yes, the two strings are anagrams of each other
String 5: Peter Piper picked a peck of pickled peppers
String 6: A peck of pickled peppers Peter Piper picked
No, the two strings are not anagrams of each other
String 7: She sells seashells by the seashore
String 8: seashells by the seashore
No, the two strings are not anagrams of each other
String 9: creative
String 10: reactive
Yes, the two strings are anagrams of each other

Saistītie: Kā atrast patskaņus, līdzskaņus, ciparus un īpašas rakstzīmes virknē

Pārbaudiet, vai JavaScript ir divas virknes

Zemāk ir JavaScript programma, lai pārbaudītu, vai divas virknes ir viena otras anagrammas:

function checkAnagrams(s1, s2) {
let size1 = s1.length;
let size2 = s2.length;
// If the length of both strings are not the same,
// it means they can't be anagrams of each other.
// Thus, return false.
if (size1 != size2)
{
return false;
}
s1.sort();
s2.sort();
for (let i = 0; i {
if (s1[i] != s2[i])
{
return false;
}
}
return true;
}

var s1 = 'listen';
var s2 = 'silent';
document.write('String 1: ' + s1 + '
');
document.write('String 2: ' + s2 + '
');
if(checkAnagrams(s1.split(''), s2.split(''))) {
document.write('Yes, the two strings are anagrams of each other' + '
');
} else {
document.write('No, the two strings are not anagrams of each other' + '
');
}
var s3 = 'Welcome to MUO';
var s4 = 'MUO to Welcome';
document.write('String 3: ' + s3 + '
');
document.write('String 4: ' + s4 + '
');
if(checkAnagrams(s3.split(''), s4.split(''))) {
document.write('Yes, the two strings are anagrams of each other' + '
');
} else {
document.write('No, the two strings are not anagrams of each other' + '
');
}
var s5 = 'Peter Piper picked a peck of pickled peppers';
var s6 = 'A peck of pickled peppers Peter Piper picked';
document.write('String 5: ' + s5 + '
');
document.write('String 6: ' + s6 + '
');
if(checkAnagrams(s5.split(''), s6.split(''))) {
document.write('Yes, the two strings are anagrams of each other' + '
');
} else {
document.write('No, the two strings are not anagrams of each other' + '
');
}
var s7 = 'She sells seashells by the seashore';
var s8 = 'seashells by the seashore';
document.write('String 7: ' + s7 + '
');
document.write('String 8: ' + s8 + '
');
if(checkAnagrams(s7.split(''), s8.split(''))) {
document.write('Yes, the two strings are anagrams of each other' + '
');
} else {
document.write('No, the two strings are not anagrams of each other' + '
');
}
var s9 = 'creative';
var s10 = 'reactive';
document.write('String 9: ' + s9 + '
');
document.write('String 10: ' + s10 + '
');
if(checkAnagrams(s9.split(''), s10.split(''))) {
document.write('Yes, the two strings are anagrams of each other' + '
');
} else {
document.write('No, the two strings are not anagrams of each other' + '
');
}

Izeja:

String 1: listen
String 2: silent
Yes, the two strings are anagrams of each other
String 3: Welcome to MUO
String 4: MUO to Welcome
Yes, the two strings are anagrams of each other
String 5: Peter Piper picked a peck of pickled peppers
String 6: A peck of pickled peppers Peter Piper picked
No, the two strings are not anagrams of each other
String 7: She sells seashells by the seashore
String 8: seashells by the seashore
No, the two strings are not anagrams of each other
String 9: creative
String 10: reactive
Yes, the two strings are anagrams of each other

Saistīts: Kā atrast rakstzīmes ASCII vērtību?

Izmantojiet pareizos resursus, lai iemācītos kodēt

Ja vēlaties nostiprināt savas kodēšanas prasmes, ir svarīgi apgūt jaunas koncepcijas un veltīt laiku to izmantošanai. Viens veids, kā to izdarīt, ir programmēšanas lietotnes, kas palīdzēs apgūt dažādas programmēšanas koncepcijas, vienlaikus izklaidējoties.

Kopīgot Kopīgot Čivināt E -pasts 8 lietotnes, kas palīdzēs iemācīties kodēt Starptautiskajā programmētāju dienā

Vai vēlaties uzlabot savas kodēšanas prasmes? Šīs lietotnes un vietnes palīdzēs jums iemācīties programmēt sev atbilstošā tempā.

kā identificēt augus, izmantojot Google
Lasīt Tālāk Saistītās tēmas
  • Programmēšana
  • JavaScript
  • Python
  • C Programmēšana
Par autoru Yuvraj Chandra(60 raksti publicēti)

Yuvraj ir datorzinātņu bakalaura students Deli universitātē, Indijā. Viņš aizraujas ar Full Stack tīmekļa izstrādi. Kad viņš neraksta, viņš pēta dažādu tehnoloģiju dziļumu.

Vairāk no Yuvraj Chandra

Abonējiet mūsu biļetenu

Pievienojieties mūsu informatīvajam izdevumam, lai iegūtu tehniskus padomus, pārskatus, bezmaksas e -grāmatas un ekskluzīvus piedāvājumus!

Noklikšķiniet šeit, lai abonētu