আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি স্ট্রিং স্ট্রে নেয় যেখানে শুধু অক্ষর থাকে −
'(', ')', '{', '}', '[' and ']'
ইনপুট স্ট্রিং বৈধ কিনা আমাদের ফাংশন নির্ধারণ করা উচিত।
একটি ইনপুট স্ট্রিং বৈধ যদি −
-
খোলা বন্ধনী একই ধরনের বন্ধনী দ্বারা বন্ধ করা আবশ্যক।
-
খোলা বন্ধনী সঠিক ক্রমে বন্ধ করতে হবে।
যেমন −
-
"()" হল একটি বৈধ বন্ধনী
-
"()[]{}" হল একটি বৈধ বন্ধনী
-
"(]" একটি অবৈধ বন্ধনী
উদাহরণ
এর জন্য কোড হবে −
const str = "()[]{}"; const isValid = (str = '') => { const map=new Map(); map.set('{','}'); map.set('(',')'); map.set('[',']'); const b=[]; for(let i=0;i<str.length;i++){ if(map.has(str.charAt(i))){ b.push(str.charAt(i)); } else{ let pop=b.pop(); if(map.get(pop)!==str.charAt(i)){ return false; } }; }; return b.length===0; }; console.log(isValid(str));
আউটপুট
এবং কনসোলে আউটপুট হবে −
true false