আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা সংখ্যার একটি অ্যারে নেয়৷ ফাংশনটি মার্জ সর্ট অ্যালগরিদম ব্যবহার করে অ্যারে সাজাতে হবে৷
সর্ট মার্জ করুন
মার্জ সর্ট দুটি অংশ বা প্রক্রিয়া দ্বারা গঠিত -
- একটি পুনরাবৃত্ত অংশ যা একটি সংগ্রহকে একক ইউনিটে বিভক্ত করে,
- এবং তারপরে একটি পুনরাবৃত্ত অংশ যা তাদের সঠিক ক্রমে একসাথে একত্রিত করে।
উদাহরণ
const arr = [23, 4, 67, 32, 1, 7, 56, 5, 89];
const mergeSort = arr => {
if (arr.length < 2){
return arr;
}
const middle = Math.floor(arr.length / 2);
const left = arr.slice(0, middle), right = arr.slice(middle, arr.length);
return merge(mergeSort(left), mergeSort(right));
};
const merge = (left, right) => {
const res = [];
while (left.length && right.length) {
if (left[0] <= right[0]){
res.push(left.shift());
}
else{
res.push(right.shift());
};
}
while (left.length){
res.push(left.shift());
};
while (right.length){
res.push(right.shift());
};
return res;
};
console.log(mergeSort(arr)); আউটপুট
এবং কনসোলে আউটপুট হবে −
[ 1, 4, 5, 7, 23, 32, 56, 67, 89 ]