সমস্যা
আমাদের জাভাস্ক্রিপ্টে একটি ডেটা স্ট্রাকচার ডিজাইন করতে হবে যা নিম্নলিখিত দুটি ক্রিয়াকলাপকে সমর্থন করে −
- addWord, যা সেই ডেটা স্ট্রাকচারে (DS) একটি শব্দ যোগ করে, আমরা এই ডেটা সঞ্চয় করার জন্য অ্যারে বা অন্য কোনো DS-এর মতো বিদ্যমান DS-এর সাহায্য নিতে পারি,
- অনুসন্ধান, যা একটি আক্ষরিক শব্দ বা একটি রেগুলার এক্সপ্রেশন স্ট্রিং অনুসন্ধান করে যেখানে ছোট হাতের অক্ষর "a-z" বা "" থাকে৷ কোথায় "." যেকোনো অক্ষর প্রতিনিধিত্ব করতে পারে
যেমন
addWord("sir") addWord("car") addWord("mad") search("hell") === false search(".ad") === true search("s..") === true
উদাহরণ
নিম্নলিখিত কোড -
class MyData{ constructor(){ this.arr = []; }; }; MyData.prototype.addWord = function (word) { this.arr.push(word) }; MyData.prototype.search = function (word) { let reg = new RegExp('^'+word+'$'); return !!this.arr.find(el => reg.test(el)); }; const data = new MyData(); data.addWord('sir'); data.addWord('car'); data.addWord('mad'); console.log(data.search('hell')); console.log(data.search('.ad')); console.log(data.search('s..'));
আউটপুট
নিম্নোক্ত কনসোল আউটপুট -
false true true