আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা সংখ্যার দুটি অ্যারে নেয়, প্রথম এবং দ্বিতীয় বল এবং তাদের সমতা পরীক্ষা করে।
আমাদের ক্ষেত্রে সমতা এই দুটি শর্তের একটি দ্বারা নির্ধারিত হবে -
-
অ্যারেগুলি সমান হয় যদি তাদের ক্রম নির্বিশেষে একই উপাদান থাকে।
-
যদি প্রথম অ্যারের এবং দ্বিতীয় অ্যারের সমস্ত উপাদানের যোগফল সমান হয়।
যেমন −
[3, 5, 6, 7, 7] and [7, 5, 3, 7, 6] are equal arrays [1, 2, 3, 1, 2] and [7, 2] are also equal arrays but [3, 4, 2, 5] and [2, 3, 1, 4] are not equal
চলুন এই ফাংশনের জন্য কোড লিখি −
উদাহরণ
const first = [3, 5, 6, 7, 7];
const second = [7, 5, 3, 7, 6];
const isEqual = (first, second) => {
const sumFirst = first.reduce((acc, val) => acc+val);
const sumSecond = second.reduce((acc, val) => acc+val);
if(sumFirst === sumSecond){
return true;
};
// do this if you dont want to mutate the original arrays otherwise use
first and second
const firstCopy = first.slice();
const secondCopy = second.slice();
for(let i = 0; i < firstCopy.length; i++){
const ind = secondCopy.indexOf(firstCopy[i]);
if(ind === -1){
return false;
};
secondCopy.splice(ind, 1);
};
return true;
};
console.log(isEqual(first, second)); আউটপুট
কনসোলে আউটপুট হবে −
true