কম্পিউটার

জাভাস্ক্রিপ্টে পুশ পপ সিকোয়েন্স যাচাই করা হচ্ছে


সমস্যা

জাভাস্ক্রিপ্ট ফাংশন যা প্রথম এবং দ্বিতীয় আর্গুমেন্ট হিসাবে দুটি অ্যারে, পুশ করা এবং পপ করা হয়। এই উভয় অ্যারে অনন্য উপাদান গঠিত নিশ্চিত করা হয়.

আমাদের ফাংশনটি সত্য হওয়া উচিত যদি এবং শুধুমাত্র যদি এটি প্রাথমিকভাবে খালি স্ট্যাকের উপর পুশ এবং পপ অপারেশনের একটি ক্রম ফলাফল হতে পারে, অন্যথায় মিথ্যা৷

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

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. আপলোড করার সময় জাভাস্ক্রিপ্টে একটি ফাইলের আকার যাচাই করা