当前位置: 首页 > news >正文

部门网站建设管理典型经验材料seo建站营销

部门网站建设管理典型经验材料,seo建站营销,qq网页版在线登录聊天,wordpress 专题插件字符流【LC1032】 设计一个算法:接收一个字符流,并检查这些字符的后缀是否是字符串数组 words 中的一个字符串。 例如,words ["abc", "xyz"] 且字符流中逐个依次加入 4 个字符 a、x、y 和 z ,你所设计的算法…

字符流【LC1032】

设计一个算法:接收一个字符流,并检查这些字符的后缀是否是字符串数组 words 中的一个字符串。

例如,words = ["abc", "xyz"] 且字符流中逐个依次加入 4 个字符 'a''x''y''z' ,你所设计的算法应当可以检测到 "axyz" 的后缀 "xyz"words 中的字符串 "xyz" 匹配。

按下述要求实现 StreamChecker 类:

  • StreamChecker(String[] words) :构造函数,用字符串数组 words 初始化数据结构。
  • boolean query(char letter):从字符流中接收一个新字符,如果字符流中的任一非空后缀能匹配 words 中的某一字符串,返回 true ;否则,返回 false

字典树还是比较熟练了,不熟练的快来练习吧

  • 思路:【字典树】

    还是字典树的老套路,题目要求是与字符流的后缀匹配,因此将words逆序加入到字典树中,然后使用StringBuilder存储字符流中的字符,每加入一个字符判断是否有其后缀字符串在字典树中存在,同样以逆序的形式判断,如果某个节点的cnt大于0,那么表示有匹配的后缀

  • 实现

    class StreamChecker {StringBuilder sb;class TireNode{TireNode[] next = new TireNode[26];int cnt;}TireNode root;public void insert(String s){TireNode p = root;for (int i = s.length() - 1; i >= 0; i--){int u = s.charAt(i) - 'a';if (p.next[u] == null)  p.next[u] = new TireNode();p = p.next[u];}p.cnt++;}public StreamChecker(String[] words) {root = new TireNode();sb = new StringBuilder();for (String word : words){insert(word);}}public boolean query(char letter) {sb.append(letter);TireNode p = root;for (int i = sb.length() - 1; i >= 0; i--){int u = sb.charAt(i) - 'a';if (p.next[u] == null) return false;p = p.next[u];if (p.cnt > 0) return true;}return p.cnt > 0;}
    }/*** Your StreamChecker object will be instantiated and called as such:* StreamChecker obj = new StreamChecker(words);* boolean param_1 = obj.query(letter);*/
    
    • 复杂度
      • 时间复杂度:insert的时间复杂度为O(n)O(n)O(n)nnn为字符串的长度,StreamChecker的时间复杂度为O(mn)O(mn)O(mn)mmm为字符串的大小,query的时间复杂度为O(d)O(d)O(d)ddd为字典树的大小
      • 空间复杂度:O(d)O(d)O(d)
http://www.tj-hxxt.cn/news/45515.html

相关文章:

  • 一定要用c 做网站吗厦门seo俱乐部
  • 自适应网站设计cnn头条新闻
  • 怎么用ngrok做网站网店营销推广
  • 网站搜索排名高怎么做谷歌独立站seo
  • 网站建设课程设计的引言百度推广怎么优化排名
  • 建筑网价格qq关键词排名优化
  • wordpress 设置显示中文字体济南seo整站优化招商电话
  • 龙岗网站多少钱营销推广活动策划
  • 加强门户网站建设提升海底捞口碑营销
  • discuz做视频网站千牛怎么做免费推广引流
  • 做期货财经网站需要哪些资质网络营销服务有哪些
  • 南京汽车企业网站建设最好的seo外包
  • 上海网站建设设计制作关键词优化搜索引擎
  • 企业网站设计合同如何创建网站站点
  • 临安区建设局网站5月疫情第二波爆发
  • 平面广告设计工作内容重庆seo网络推广平台
  • 承德网站建设咨询优化设计五年级下册数学答案
  • 做关于植物的网站厨师培训学校
  • html cssseo 优化顾问
  • 红树湾南网站开发怎么制作一个自己的网站
  • 网站建设模板的百度首页关键词推广
  • 中华人民共和国住房建设部网站alexa全球网站排名分析
  • 搭建网站多少时间站点
  • 国内哪些网站是php做的网络营销的内容主要有哪些
  • 网站做可以退款吗手机营销推广方案
  • 浙江省建设网站汕头seo推广外包
  • 作品集的个人网站怎么做站长之家域名信息查询
  • 网站建设吉金手指排名11长沙百度seo
  • 网站空间代理加盟sem竞价开户
  • 公司做网站哪里做交换友情链接的方法