কম্পিউটার

জাভাস্ক্রিপ্টের অ্যারেতে গ্রুপ ম্যাচিং উপাদান


ধরুন, আমাদের কাছে বর্ণমালার একটি বিন্যাস রয়েছে যাতে কিছু পুনরাবৃত্তিমূলক বর্ণমালা রয়েছে -

const arr = [
   'a','a','a','a','d','e','e','f','h','h','h','i','l','m','n',
   'r','s','s',' t','u','v','y','y'
];

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এইরকম একটি অ্যারেতে নেয়। ফাংশনটি সমস্ত অভিন্ন বর্ণমালাকে তাদের অনন্য সাব্যারেতে গোষ্ঠীভুক্ত করা উচিত।

অতএব, উপরের অ্যারের জন্য, আউটপুটটি −

এর মত হওয়া উচিত
const output = [
   ['a','a','a','a'], ['d'], ['e','e'], ['f'], ['h','h','h'],
   ['i'], ['l'], ['m'], ['n'], ['r'], ['s','s'], ['t'], ['u'],
   ['v'], ['y','y']
];

উদাহরণ

এর জন্য কোড হবে −

const arr = [
   'a','a','a','a','d','e','e','f','h','h','h','i','l','m','n','r','s','s','
   t','u','v','y','y'
];
const bringAlong = (arr = []) => {
   const hash = {};
   return arr.reduce(function(res, e) {
      if(hash[e] === undefined)
         hash[e] = res.push([e]) − 1;
      else
         res[hash[e]].push(e);
      return res;
   }, []);
};
console.log(bringAlong(arr));

আউটপুট

এবং কনসোলে আউটপুট হবে −

[
   [ 'a', 'a', 'a', 'a' ],
   [ 'd' ],
   [ 'e', 'e' ],
   [ 'f' ],
   [ 'h', 'h', 'h' ],
   [ 'i' ],
   [ 'l' ],
   [ 'm' ],
   [ 'n' ],
   [ 'r' ],
   [ 's', 's' ],
   [ 't' ],
   [ 'u' ],
   [ 'v' ],
   [ 'y', 'y' ]
]

  1. জাভাস্ক্রিপ্ট ব্যবহার করে একটি অ্যারেতে একটি উপাদান যোগ করা

  2. একটি জাভাস্ক্রিপ্ট অ্যারে প্রথম উপাদান এবং শেষ উপাদান?

  3. কিভাবে জাভাস্ক্রিপ্টে আইডি দ্বারা অবজেক্টের অ্যারে গ্রুপ করবেন?

  4. একটি অ্যারের শেষ উপাদান প্রিন্ট করতে জাভাস্ক্রিপ্ট কোড