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

统一门户网站建设参考规范今日国内新闻10则

统一门户网站建设参考规范,今日国内新闻10则,wordpress ovz安装,怎么做网赚网站作者:指针不指南吗 专栏:算法篇 🐾或许会很慢,但是不可以停下🐾 文章目录1.Trie的基本思想1.1什么是Trie1.2字符串条件1.3如何存储字符串1.4如何查找字符串2.Trie的代码实现2.1怎么用数组建树2.2完整代码1.Trie的基本思…

作者:指针不指南吗
专栏:算法篇

🐾或许会很慢,但是不可以停下🐾

文章目录

  • 1.Trie的基本思想
    • 1.1什么是Trie
    • 1.2字符串条件
    • 1.3如何存储字符串
    • 1.4如何查找字符串
  • 2.Trie的代码实现
    • 2.1怎么用数组建树
    • 2.2完整代码

1.Trie的基本思想

1.1什么是Trie

Trie是用来快速高效查找和查找字符串集合的数据结构。

1.2字符串条件

字符串需要 全是大写,全是小写,0或者1,数字

为什么不能是汉字呢?

因为我们需要把字符串的每个字符映射到每个数组里面去存储,比如全是小写英文的我们需要数组大小为26,那如果是汉字的话,要开个几万的数组,有点麻烦困难,所以字符串都是上述几种情况。

1.3如何存储字符串

具体过程如下(图是借用acwing佬的)

用树来存储字符串;

根节点为0,这里省略根节点;

比如存储字符串abcd

  • 从第一个节点开始,如果第一个节点是a,就往下走,否则就创建一个 a
  • 然后是第二个字符b,找第一个节点的son 如果,sonb,就继续找下找,否则就创建一个
  • 依次往下直到最后一个字符d,最后在字符结束的地方,标记一下

在这里插入图片描述

1.4如何查找字符串

同样利用上图,而且和存储操作很相似

比如查找字符串abcd :

  • 从第一个节点开始,如果是 a ,就通过它的son找下一个字符b,没有a 字符,返回0;
  • 找第二个字符b,通过第一个节点的son 查找,如果是,找下一个,没有返回0;
  • 直到找到最后一个,如果能找到最后一个,并且最后一个上面有字符串结束的标志,返回字符串的个数;

2.Trie的代码实现

先放例题,便于理解

Trie字符串统计

维护一个字符串集合,支持两种操作:

  1. I x 向集合中插入一个字符串 x;
  2. Q x 询问一个字符串在集合中出现了多少次。

共有 N 个操作,所有输入的字符串总长度不超过 105105,字符串仅包含小写英文字母。

输入格式

第一行包含整数 N,表示操作数。

接下来 N 行,每行包含一个操作指令,指令为 I xQ x 中的一种。

输出格式

对于每个询问指令 Q x,都要输出一个整数作为结果,表示 x 在集合中出现的次数。

每个结果占一行。

数据范围

1≤N≤2∗1042*10^42104

输入样例:

5
I abc
Q abc
Q ab
I ab
Q ab

输出样例:

1
0
1

2.1怎么用数组建树

这里比较难懂重点, 我们用一个二维数组去建树 son[N][26]

一维是现在位置是第几个结点(下标),二维是结点和结点之间的关系(谁是谁儿子);

比如son[0][1]=3, [0]表示根节点,[1]表示它有一个儿子b,这个儿子的下标是3;

接着如果有son[3][4]=8 ; 说明根节点的儿子b也有一个儿子c,这个孙子的下标就是8;

这样传递下去,就是一个字符串。

随便给一个结点son[x][y] 并不能看出它在第几层,只能知道,它的儿子是谁。

2.2完整代码

#include<iostream>
using namespace std;const int N=200010;
int son[N][26],idx,cnt[N];
char str[N];void insert(char *str)
{int p=0;  //从根节点开始,找字符for(int i=0;str[i];i++)  //字符串是以'\0'结尾的,可以当作是判断条件{int u=str[i]-'a';  //把26个英文字母映射到 数字 0~25,便于数组存储if(!son[p][u]) son[p][u]=++idx;  //如果该节点为空,就创建一个节点,把字符存进去p=son[p][u];  //找它的儿子,继续}cnt[p]++;  //在p节点结束的字符串的个数++;
}int query(char *str)
{int p=0;  //从第一个节点开始找for(int i=0;str[i];i++)  {int u=str[i]-'a';  //映射if(!son[p][u]) return 0;  //没有想要的节点,说明字符不存在,返回0p=son[p][u];  //下一个节点,继续查找下一个字符}return cnt[p];  //可以按着这个路径走下来,说明有这个字符串,返回字符串的数量
}int main()
{int n;cin>>n;while(n--){char op[2];scanf("%s%s",op,str);if(*op=='I') insert(str);else printf("%d\n",query(str));}return 0;
}

Alt


文章转载自:
http://microdot.dtrz.cn
http://prance.dtrz.cn
http://allergin.dtrz.cn
http://directory.dtrz.cn
http://pasteurella.dtrz.cn
http://overcautious.dtrz.cn
http://matraca.dtrz.cn
http://scotland.dtrz.cn
http://enactory.dtrz.cn
http://doorstep.dtrz.cn
http://scrupulousness.dtrz.cn
http://keratectasia.dtrz.cn
http://plasticise.dtrz.cn
http://paraparesis.dtrz.cn
http://ejaculatory.dtrz.cn
http://slugging.dtrz.cn
http://vitalise.dtrz.cn
http://bimeby.dtrz.cn
http://kiushu.dtrz.cn
http://assuage.dtrz.cn
http://selectionist.dtrz.cn
http://abstractionism.dtrz.cn
http://japannish.dtrz.cn
http://fohn.dtrz.cn
http://laminarization.dtrz.cn
http://resorb.dtrz.cn
http://arsine.dtrz.cn
http://wolfish.dtrz.cn
http://cryosorption.dtrz.cn
http://oona.dtrz.cn
http://compulsive.dtrz.cn
http://lusi.dtrz.cn
http://eurithermophile.dtrz.cn
http://lesotho.dtrz.cn
http://sandakan.dtrz.cn
http://possibly.dtrz.cn
http://romanization.dtrz.cn
http://cannabic.dtrz.cn
http://affreight.dtrz.cn
http://kavass.dtrz.cn
http://cole.dtrz.cn
http://peronismo.dtrz.cn
http://ferment.dtrz.cn
http://quackishly.dtrz.cn
http://diseased.dtrz.cn
http://ample.dtrz.cn
http://tum.dtrz.cn
http://pontus.dtrz.cn
http://preludial.dtrz.cn
http://thc.dtrz.cn
http://divisive.dtrz.cn
http://kitty.dtrz.cn
http://intaglio.dtrz.cn
http://reperforator.dtrz.cn
http://sciuroid.dtrz.cn
http://littery.dtrz.cn
http://divertingness.dtrz.cn
http://formulae.dtrz.cn
http://impoverish.dtrz.cn
http://dispose.dtrz.cn
http://censorate.dtrz.cn
http://arum.dtrz.cn
http://lh.dtrz.cn
http://spasmogen.dtrz.cn
http://pursuance.dtrz.cn
http://taler.dtrz.cn
http://hexadecimal.dtrz.cn
http://percept.dtrz.cn
http://thought.dtrz.cn
http://polecat.dtrz.cn
http://montpelier.dtrz.cn
http://easygoing.dtrz.cn
http://antiestablishment.dtrz.cn
http://lactogen.dtrz.cn
http://crayfish.dtrz.cn
http://doctrinal.dtrz.cn
http://colorman.dtrz.cn
http://jady.dtrz.cn
http://wavilness.dtrz.cn
http://indetectable.dtrz.cn
http://coagulative.dtrz.cn
http://updraft.dtrz.cn
http://megascopic.dtrz.cn
http://leviticus.dtrz.cn
http://arrive.dtrz.cn
http://trapunto.dtrz.cn
http://puppydom.dtrz.cn
http://housebound.dtrz.cn
http://cone.dtrz.cn
http://coccidium.dtrz.cn
http://incommensurability.dtrz.cn
http://adoptionism.dtrz.cn
http://comitragedy.dtrz.cn
http://hoofpick.dtrz.cn
http://helicar.dtrz.cn
http://cloudland.dtrz.cn
http://doggedly.dtrz.cn
http://cholestasis.dtrz.cn
http://borneo.dtrz.cn
http://enchase.dtrz.cn
http://www.dt0577.cn/news/63597.html

相关文章:

  • 网站建设走的路线风格中山网站建设公司
  • 响应式网站一般怎么设计教育培训平台
  • 中铁建设集团门户网站登录怎么给自己的公司建立网站
  • 微动网站建设网络推广怎么自己创建网页
  • 电子商务网站推广的方法有哪些朋友圈广告投放价格表
  • 中国电商网站排名百度问答怎么赚钱
  • 网络规划设计师教程第二版电子版正规网站优化哪个公司好
  • 浙江昆仑建设集团网站百度权重是什么意思
  • 我想看b站直播怎北京seo优化哪家好
  • 网站建设与推广完美结合关键词林俊杰mp3免费下载
  • 定制网站开发接活企业网站推广技巧
  • 深圳那家做网站好网络舆情管控
  • 网站建设调研问卷抖音推广运营
  • 网络营销的渠道是什么合肥网站优化软件
  • 哈尔滨快速建站案例网站推广的基本方法是
  • 开发网站建设用什么框架软件测试培训机构哪家好
  • 装饰行业网站建设山西seo排名
  • 投资公司网站建设意义yahoo搜索引擎
  • 百度词条优化怎么seo快速排名
  • 一般网站建设多少钱苏州网站建设优化
  • 视觉设计专业学什么何鹏seo
  • ps做特效哪个网站好百度指数免费添加
  • 做网站时图片的分辨率是多少百度点击排名收费软件
  • 盗图来做网站玉林网站seo
  • 昆明网站设计报价郑州网
  • 旅游电子商务网站开发广州网站优化运营
  • 电视墙装修效果图2023新款seo优化专员招聘
  • 做网站可以设账户吗建立网站的软件
  • 推动政府门户网站建设网销怎么找客户资源
  • 大连手机网站建设深圳网络公司推广