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

জাভাস্ক্রিপ্টে পুশ-পপ সিকোয়েন্স বৈধতা যাচাই করা


সমস্যা

জাভাস্ক্রিপ্ট ফাংশন যা দুটি অ্যারে (pushed, popped) নেবে। এই দুটি অ্যারে یونিক এলিমেন্ট ধারণ করে। ফাংশনটি true রিটার্ন করবে যদি এবং কেবল যদি এই সিকোয়েন্সটি একটি প্রাথমিকভাবে খালি স্ট্যাকে পুশ ও পপ অপারেশন করার ফলাফল হতে পারে, অন্যথায় false।

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

const pushed = [1, 2, 3, 4, 5]; const popped = [4, 5, 3, 2, 1];

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

const output = true;

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

সম্ভব সিকোয়েন্স –
push(1), push(2), push(3), push(4), pop() -> 4, push(5), pop() -> 5, pop() -> 3, pop() -> 2, pop() -> 1

উদাহরণ

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

const pushed = [1, 2, 3, 4, 5]; const popped = [4, 5, 3, 2, 1]; const validateSequence = (pushed = [], popped = []) => { let pushedIndex = 0; let poppedIndex = 0; const stack = []; while (pushedIndex < pushed.length) { if (stack[stack.length - 1] !== popped[poppedIndex]) { stack.push(pushed[pushedIndex++]); } else { stack.pop(); poppedIndex += 1; } } while (stack.length) { if (stack.pop() !== popped[poppedIndex++]) { return false; } } return true; }; console.log(validateSequence(pushed, popped));

আউটপুট

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

true
  1. জাভাস্ক্রিপ্টে ফিবোনাচি সিকোয়েন্স

  2. জাভাস্ক্রিপ্ট রেজেক্সে \d বনাম \D পার্থক্য

  3. জাভাস্ক্রিপ্টে উপলব্ধ পপ-আপ বক্সের প্রকার

  4. জাভাস্ক্রিপ্টে ফাইল আপলোড সময় সাইজ ভ্যালিডেশন