কম্পিউটার

জাভাস্ক্রিপ্টে প্রদত্ত সংখ্যক উপাদানের সাথে অ্যারের পারমুটেশন কীভাবে তৈরি করবেন


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

ফাংশনটি এমন সমস্ত অ্যারেগুলির একটি অ্যারে তৈরি করা উচিত যার দৈর্ঘ্য দ্বিতীয় আর্গুমেন্ট দ্বারা নির্দিষ্ট করা সংখ্যার সমান এবং ইনপুট অ্যারের উপাদানগুলির সমস্ত সম্ভাব্য স্থানান্তর ধারণ করে৷

যেমন −

যদি ইনপুট অ্যারে এবং সংখ্যা হয় −

const arr = ['k', 5];
const num = 3;

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

হওয়া উচিত
const output = [
   [ 'k', 'k', 'k' ],
   [ 'k', 'k', 5 ],
   [ 'k', 5, 'k' ],
   [ 'k', 5, 5 ],
   [ 5, 'k', 'k' ],
   [ 5, 'k', 5 ],
   [ 5, 5, 'k' ],
   [ 5, 5, 5 ]
];

উদাহরণ

নিম্নলিখিত কোড -

const arr = ['k', 5];
const num = 3;
const allPairs = (arr = [], num) => {
   const res = [];
   if(num === 0){
      return [[]];
   }
   const subResult = allPairs(arr, num - 1);
   for(let el of arr){
      for(let sub of subResult){
         res.push([el].concat(sub));
      }
   }
   return res;
}
console.log(allPairs(arr, num));

আউটপুট

নিম্নোক্ত কনসোল আউটপুট -

[
   [ 'k', 'k', 'k' ],
   [ 'k', 'k', 5 ],
   [ 'k', 5, 'k' ],
   [ 'k', 5, 5 ],
   [ 5, 'k', 'k' ],
   [ 5, 'k', 5 ],
   [ 5, 5, 'k' ],
   [ 5, 5, 5 ]
]

  1. কিভাবে জাভাস্ক্রিপ্ট দিয়ে একটি স্বয়ংসম্পূর্ণ তৈরি করবেন?

  2. জাভাস্ক্রিপ্টের সাথে একই অ্যারের একটি অ্যারের উপাদানগুলিকে কীভাবে নকল করবেন?

  3. আমি কিভাবে একটি 3D জাভাস্ক্রিপ্ট অ্যারেতে সবচেয়ে বড় সংখ্যা খুঁজে পাব?

  4. অনির্ধারিত উপাদানগুলির চারপাশে একটি অ্যারের সবচেয়ে বড় সংখ্যা কীভাবে খুঁজে পাবেন? - জাভাস্ক্রিপ্ট