এনাগ্রাম
দুটি স্ট্রিংকে একে অপরের এনাগ্রাম বলা হয় যদি প্রথমটিকে রি-অ্যারেঞ্জ, রি-ফ্রেজ বা শাফল করে দ্বিতীয়টির সমান একটি স্ট্রিং তৈরি করা যায়।
উদাহরণ: 'something' এবং 'emosghtin' একে অপরের এনাগ্রাম।
আমাদের একটি ফাংশন লিখতে হবে যা দুটি স্ট্রিং (str1 এবং str2) নিবে এবং এনাগ্রাম হলে true, না হলে false রিটার্ন করবে।
উদাহরণ
এটির কোড হবে:
const str1 = "something"; const str2 = "emosghtin"; const validAnagram = (str1 = '',str2 = '') => { let obj1 = {} let obj2 = {} if (str1.length !== str2.length){ return false }; for(let char of str1){ obj1[char]= (obj1[char] || 0) + 1 }; for(let char of str2){ obj2[char]= (obj2[char] || 0) + 1 }; for(let val in obj1){ if(!(val in obj2) || (obj2[val] !== obj1[val])){ return false } }; return true; }; console.log(validAnagram(str1, str2));
আউটপুট
কনসোলে আউটপুট হবে:
true