在 JavaScript 中的数据结构中添加和搜索单词


问题

我们要求在 JavaScript 中设计一个支持以下两个操作的数据结构 −

  • addWord,该操作会将单词添加到该数据结构 (DS) 中,我们可以借助数组或其他任何 DS 等现有 DS 来存储此数据,
  • search,该操作会搜索文字单词或包含小写字母 "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

更新日期:2021 年 4 月 19 日

125 次浏览

开启你的 职业生涯

完成该课程以获得认证

开始学习
广告