কম্পিউটার

জাভাস্ক্রিপ্টে অ্যারে থেকে এলোমেলোভাবে সূচী বাছাই


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা সংখ্যার একটি অ্যারে নেয়, অ্যার, যা সম্ভবত প্রথম আর্গুমেন্ট হিসাবে ডুপ্লিকেট এবং দ্বিতীয় আর্গুমেন্ট হিসাবে অ্যারেতে বিদ্যমান একটি পূর্ণসংখ্যা ধারণ করে৷

ফাংশনটি এমন একটি সূচী প্রদান করবে যেখানে সংখ্যাটি অ্যারেতে বিদ্যমান থাকবে এবং যেহেতু সংখ্যাটি অ্যারেতে একাধিকবার বিদ্যমান থাকতে পারে, তাই আমাদের এলোমেলোভাবে একটি সূচক বাছাই করতে হবে এবং সেই সূচকটি ফেরত দিতে হবে৷

উদাহরণস্বরূপ, যদি ফাংশনে ইনপুট হয় −

const arr = [5, 3, 6, 7, 3, 4, 2, 3];
const num = 3;

তারপর আউটপুট −

হওয়া উচিত
const output = 4;

আউটপুট ব্যাখ্যা:

অ্যারের মধ্যে সূচী 1, 4 এবং 7-এ 3 নম্বরটি বিদ্যমান, এবং যেহেতু আমাদেরকে এলোমেলোভাবে যেকোনো সূচক বাছাই করতে হবে, তাই আউটপুট 1-এর যেকোনো একটি হতে পারে।

উদাহরণ

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

const arr = [5, 3, 6, 7, 3, 4, 2, 3];
const num = 3;
Array.prototype.pick = function(target) {
   const targets = []
   this.findTarget(0, this.length, target, targets);
   return targets[Math.floor(Math.random() * targets.length)];
};
Array.prototype.findTarget = function(start, end, target, targets) {
   if(start + 1 === end || start === end) {
      if(this[start] === target) targets.push(start);
      return;
   }
   let j = start + Math.floor((end - start)/2);
   this.findTarget(start, j, target, targets);
   this.findTarget(j, end, target, targets);
};
console.log(arr.pick(num));

আউটপুট

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

4

  1. জাভাস্ক্রিপ্টে একটি অ্যারে থেকে একটি উপাদান সরানো হচ্ছে

  2. জাভাস্ক্রিপ্ট অ্যারে থেকে() পদ্ধতি

  3. জাভাস্ক্রিপ্ট অ্যারে findIndex() ফাংশন

  4. JavaScript Array.from() পদ্ধতি