কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে টাপলস (Tuples) এর ইন্ডেক্স পার্থক্য সর্বোচ্চ করা


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি ইন্টিজার অ্যারে (arr) নেবে। ধরা যাক, দুটি ইন্ডেক্স i এবং j অ্যারে-এ আছে যারা নিচের শর্ত পূরণ করে –
• i < j, এবং
• arr[i] <= arr[j]
এই সব ইন্ডেক্স টাপলস (i, j) এর মাঝে j - i এর মান সর্বোচ্চ কত হবে তা ফাংশনটি রিটার্ন করবে।

উদাহরণস্বরূপ, ইনপুট যদি হয় –

const arr = [6, 0, 8, 2, 1, 5];

তবে আউটপুট হবে –

const output = 4;

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

সর্বোচ্চ পার্থক্য পাওয়া যায় (i, j) = (1, 5)-এ: arr[1] = 0 এবং arr[5] = 5।

উদাহরণ

কোডটি নিচের মতো –

const arr = [6, 0, 8, 2, 1, 5]; const maximumDifference = (arr = []) => { let max = 0; const stack = [0]; for (let i = 1; i < arr.length; i++) { if (arr[i] < arr[stack[stack.length - 1]]) { stack.push(i); } } for (let i = arr.length - 1; i >= 0; i--) { while (arr[i] >= arr[stack[stack.length - 1]]) { max = Math.max(max, i - stack.pop()); } } return max; }; console.log(maximumDifference(arr));

আউটপুট

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

4
  1. জাভাস্ক্রিপ্টে বৃদ্ধিমান মান সহ সর্বোচ্চ ইনডেক্স পার্থক্য বের করা

  2. জাভাস্ক্রিপ্টে অ্যারেতে পূর্ণসংখ্যা ও স্ট্রিং সংখ্যার পার্থক্য বের করা

  3. জাভাস্ক্রিপ্টে অ্যারে সূচক যেখানে বাম ও ডান পাশের যোগফল সমান

  4. জাভাস্ক্রিপ্টে অ্যারেতে মিডিয়ান সূচক খুঁজে বের করা