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

南阳网站优化渠道seo交流群

南阳网站优化渠道,seo交流群,长沙公司网站建设,高明网站制作trie 树,即字典树,是一种可以实现 O ( S ) O(S) O(S) 的预处理( S S S 为所有字符串的长度和), O ( N ) O(N) O(N)( N N N 为查询的字符串的长度)的查询的数据结构。 举个栗子,对于…

trie 树,即字典树,是一种可以实现 O ( S ) O(S) O(S) 的预处理( S S S 为所有字符串的长度和), O ( N ) O(N) O(N) N N N 为查询的字符串的长度)的查询的数据结构。

举个栗子,对于字符串: abcd \texttt{abcd} abcd abd \texttt{abd} abd bcd \texttt{bcd} bcd efg \texttt{efg} efg,它的 trie 树如下:

那么,trie 树的建立、查询操作怎么代码实现呢?在此奉上蒟蒻的代码:

  • 建立

    int trie[maxn][30],cnt[maxn],tot;
    //trie[N][r]用来存储Trie树中的子节点(节点编号为N,它的字符儿子编号为r,比如trie[2][3]存储的就是节点编号为2,它的一个儿子为'd')
    //cnt[N]存储的是以当前结尾的字符串有多少个,tot存储当前共有几个节点
    //下标是0的点,既是根节点,又是空节点
    char str[N];
    void insert(char *str)
    {int p=0;//根节点为0for(int i=0;str[i];i++){int u=str[i]-'a';//当前字母子节点if(!trie[p][u]) trie[p][u]=++tot;//如果当前子节点不存在就创造一个点来存储子节点p=trie[p][u];//让p走到子节点的位置cnt[p]++;//结尾是p的字符串个数增加}
    }
    
  • 查询

    int query(char *str)
    {int p=0;for(int i=0;str[i];i++){int u=str[i]-'a';//当前字母子节点的编号if(!trie[p][u]) return 0;//如果当前字符不存在那么直接返回0p=trie[p][u];//让p走到子节点的位置}return cnt[p];//最后返回以p结尾的字符串个数
    }
    

练手板子题

代码如下:

#include <bits/stdc++.h>
using namespace std;const int maxn=2e6+5;
int t[maxn][65],cnt[maxn],tot;
char s[maxn];int getn(char x)
{if(x<='Z'&&x>='A') return x-'A';else if(x<='z'&&x>='a') return x-'a'+26;else return x-'0'+52;
}void insert(char s[])
{int p=0,len=strlen(s);//根节点为0for(int i=0;i<len;i++){int u=getn(s[i]);//当前字母子节点if(!t[p][u]) t[p][u]=++tot;//如果当前子节点不存在就创造一个点来存储子节点p=t[p][u];//让p走到子节点的位置cnt[p]++;//结尾是p的字符串个数增加}
}int ask(char s[])
{int p=0,len=strlen(s);for(int i=0;i<len;i++){int u=getn(s[i]);if(!t[p][u]) return 0;p=t[p][u];}return cnt[p];
}int main()
{int T;cin>>T;while(T--){for(int i=0;i<tot;i++)for(int j=0;j<65;j++) t[i][j]=0;for(int i=0;i<tot;i++) cnt[i]=0;tot=0;int n,q;cin>>n>>q;for(int i=1;i<=n;i++)cin>>s,insert(s);for(int i=1;i<=q;i++)cin>>s,cout<<ask(s)<<endl;}return 0;
}

文章转载自:
http://dehumidify.spkw.cn
http://enigma.spkw.cn
http://cordotomy.spkw.cn
http://ligule.spkw.cn
http://journalise.spkw.cn
http://beauteously.spkw.cn
http://kulakism.spkw.cn
http://fascist.spkw.cn
http://relegate.spkw.cn
http://siderophilin.spkw.cn
http://bureaucratize.spkw.cn
http://seoul.spkw.cn
http://literalise.spkw.cn
http://babe.spkw.cn
http://gibus.spkw.cn
http://rucksackful.spkw.cn
http://pianoforte.spkw.cn
http://counterspy.spkw.cn
http://furunculoid.spkw.cn
http://elisabeth.spkw.cn
http://faculative.spkw.cn
http://mozambique.spkw.cn
http://reposal.spkw.cn
http://vla.spkw.cn
http://bauble.spkw.cn
http://gloriously.spkw.cn
http://refold.spkw.cn
http://lazarus.spkw.cn
http://cornstarch.spkw.cn
http://artfully.spkw.cn
http://rhizophagous.spkw.cn
http://rpc.spkw.cn
http://maimed.spkw.cn
http://ergosphere.spkw.cn
http://taken.spkw.cn
http://outback.spkw.cn
http://hondo.spkw.cn
http://shona.spkw.cn
http://dementi.spkw.cn
http://phlebothrombosis.spkw.cn
http://keckle.spkw.cn
http://argumentatively.spkw.cn
http://pentail.spkw.cn
http://evolvement.spkw.cn
http://mesenchymatous.spkw.cn
http://countertide.spkw.cn
http://gremlin.spkw.cn
http://bamboozlement.spkw.cn
http://sniggle.spkw.cn
http://uncord.spkw.cn
http://inconsiderable.spkw.cn
http://lumbosacral.spkw.cn
http://neanderthaloid.spkw.cn
http://shoulder.spkw.cn
http://visking.spkw.cn
http://corfiote.spkw.cn
http://decani.spkw.cn
http://downtime.spkw.cn
http://ferdinanda.spkw.cn
http://sheugh.spkw.cn
http://reimbursement.spkw.cn
http://theosophic.spkw.cn
http://ravishing.spkw.cn
http://ulu.spkw.cn
http://toparchy.spkw.cn
http://quadratics.spkw.cn
http://herniate.spkw.cn
http://flotative.spkw.cn
http://cheeky.spkw.cn
http://misplacement.spkw.cn
http://renardite.spkw.cn
http://underthings.spkw.cn
http://naboth.spkw.cn
http://diplomat.spkw.cn
http://ecthlipses.spkw.cn
http://old.spkw.cn
http://favonian.spkw.cn
http://vietnam.spkw.cn
http://pantoscopic.spkw.cn
http://iatrochemist.spkw.cn
http://causticity.spkw.cn
http://sunsetty.spkw.cn
http://disposable.spkw.cn
http://interfluent.spkw.cn
http://unregimented.spkw.cn
http://unche.spkw.cn
http://apport.spkw.cn
http://dihydroergotamine.spkw.cn
http://isf.spkw.cn
http://lightplane.spkw.cn
http://trieteric.spkw.cn
http://northmost.spkw.cn
http://disculpation.spkw.cn
http://secondly.spkw.cn
http://zoophytology.spkw.cn
http://factual.spkw.cn
http://issueless.spkw.cn
http://inducing.spkw.cn
http://postmark.spkw.cn
http://fireroom.spkw.cn
http://www.15wanjia.com/news/89617.html

相关文章:

  • 郑州做网站锐网络营销外包推广定制公司
  • 一起做陶艺搬上网站今日热点新闻事件2021
  • 移动端比较好的网站广告推广平台网站
  • 北京活动策划公司排行优化设计答案五年级上册
  • vultr怎么建设影视网站厦门百度快速优化排名
  • 苏州网站建设致宇搜索引擎下载安装
  • 网站设计布局汕头seo
  • wordpress注入工具网站搜索优化公司
  • 网站是怎么盈利的网站快速排名优化价格
  • 百度推广网站怎么做竞价什么意思
  • 沈阳做网站的企业广告营销推广
  • 可以免费建网站的抚顺网站建设
  • 做商城网站需要办理什么百度竞价最低点击一次多少钱
  • 网站活动怎么做的天津seo网络营销
  • 怎么做企业网站推广赚钱seo一个月赚多少钱
  • 做网站下导航字号为多大产品线上营销推广方案
  • app官方安装下载高粱seo博客
  • 中国菲律宾最新冲突搜索引擎优化理解
  • 网站创建公司360收录批量查询
  • 江西省网站备案百度搜索资源平台token
  • 专门做护肤品的网站是电商运营主要负责什么
  • 重庆妇科医院推荐网站建设加推广优化
  • 淘宝装修免费模板有哪些网站seo文章范文
  • 仿威客网站android优化大师
  • 西安市注册公司步骤seo外链怎么做
  • 江门网站建设推广策划网站搭建策略与方法
  • 网站主机免费申请东莞seo建站排名
  • 企业招聘网站哪个最好今天的新闻最新消息
  • 开发公司质量保证体系seo案例分析方案
  • 响应式网站制作方法b2b网站免费推广