কম্পিউটার

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


ধরা যাক, আমাদের একটি রিকার্সিভ ফাংশন লিখতে হবে যা সংখ্যার একটি অ্যারের সমস্ত উপাদানের যোগফল দেয় কিন্তু একটি মোচড় দিয়ে এবং মোচড় হল যে আমরা যে পুনরাবৃত্ত ফাংশনটি লিখি তা কোনো অতিরিক্ত পরিবর্তনশীল (মেমরি) শুরু করতে পারে না।

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

এখানে সমাধান -

আমাদের ইতিমধ্যেই একটি অ্যারে রয়েছে এবং আমরা এর প্রথম উপাদান ব্যবহার করতে পারি (অর্থাৎ, পুনরাবৃত্ত যোগফল ধরে রাখতে জিরোথ সূচকের উপাদান)।

পদ্ধতিটি হল যে আমরা বারবার অ্যারের থেকে একটি উপাদান পপ করি এবং এটিকে অ্যারের প্রথম উপাদানে যুক্ত করি যতক্ষণ না আমাদের কাছে শুধুমাত্র একটি উপাদান অবশিষ্ট থাকে৷

যখন আমাদের কাছে শুধুমাত্র একটি উপাদান অবশিষ্ট থাকে, তখন এটি হবে অ্যারের ক্রমবর্ধমান সমষ্টি এবং আমরা তা ফেরত দিই। এই পদ্ধতির কোড হবে −

উদাহরণ

const recursiveSum = arr => {
   if(arr.length > 1){
      arr[0] += arr.pop();
      return recursiveSum(arr);
   };
   return arr[0];
};
console.log(recursiveSum([1,2,3,4]));
console.log(recursiveSum([1,2,3,4,3,6,3,32,7,9,5]));
console.log(recursiveSum([]));

আউটপুট

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

10
75
undefined

  1. কিভাবে জাভাস্ক্রিপ্ট দিয়ে একটি অ্যারেতে একটি আইটেম যুক্ত করবেন

  2. কিভাবে জাভাস্ক্রিপ্ট দিয়ে একটি অ্যারে খালি করবেন

  3. নতুন কীওয়ার্ড দিয়ে একটি জাভাস্ক্রিপ্ট অ্যারে তৈরি করা হচ্ছে।

  4. একটি শর্ত সহ একটি জাভাস্ক্রিপ্ট অ্যারে যোগদান?