কম্পিউটার

একটি অ্যারে জাভাস্ক্রিপ্টকে পুনরাবৃত্ত সাজানোর জন্য মার্জ সর্ট ব্যবহার করে


আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা সংখ্যার একটি অ্যারে নেয়৷ ফাংশনটি মার্জ সর্ট অ্যালগরিদম ব্যবহার করে অ্যারে সাজাতে হবে৷

সর্ট মার্জ করুন

মার্জ সর্ট দুটি অংশ বা প্রক্রিয়া দ্বারা গঠিত -

  • একটি পুনরাবৃত্ত অংশ যা একটি সংগ্রহকে একক ইউনিটে বিভক্ত করে,
  • এবং তারপরে একটি পুনরাবৃত্ত অংশ যা তাদের সঠিক ক্রমে একসাথে একত্রিত করে।

উদাহরণ

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
]

  1. এলোমেলো করার জন্য JavaScript Array.sort() পদ্ধতি ব্যবহার করা কি সঠিক?

  2. জাভাস্ক্রিপ্টে মার্জ সর্ট কিভাবে বাস্তবায়ন করবেন?

  3. জাভাস্ক্রিপ্টে সাজানোর বনাম দ্রুত সাজানোর মার্জ করুন

  4. জাভাস্ক্রিপ্টে Array.prototype.sort()।