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

专做户外装备测评视频网站什么是seo搜索优化

专做户外装备测评视频网站,什么是seo搜索优化,win10记事本怎么做网站,建设网站需要做哪些工作内容原理 介绍 高效地存储和查询字符串的数据结构。所以其重点在于:存储、查询两个操作。 存储操作 示例和图片来自:https://blog.csdn.net/qq_42024195/article/details/88364485 假设有这么几个字符串:b,abc,abd&…

原理

介绍

高效地存储和查询字符串的数据结构。所以其重点在于:存储、查询两个操作。

存储操作

示例和图片来自:https://blog.csdn.net/qq_42024195/article/details/88364485

假设有这么几个字符串:b,abc,abd,bcd,abcd,efg,hii。最终存储出来的Trie图如下图所示:

在这里插入图片描述
具体是怎么存的呢?对于每一个字符串,从树的根节点开始,依次判断当前节点的儿子节点中是否有当前字符:

  • 如果有,则进行下一个字符的判断,同时根节点更新为该儿子节点
  • 如果没有,创建一个儿子节点为当前字符,然后根节点更新为该儿子节点

如果已经到了最后一个字符,就在对应的儿子节点进行一个标记,表示从根节点到该节点的字符组成的字符串是一个单词。(对应图中的红色部分)

查询

查询和存储的操作类似。对于一个给定的字符串,从树的根节点开始,依次判断当前节点的儿子节点中是否有当前字符:

  • 如果有,则进行下一个字符的判断,同时根节点更新为该儿子节点
  • 如果没有,则说明不存在该字符串,直接返回不存在

复杂度

时间复杂度:O(max_len(s))=O(h),h为Trie树的高度,即最长字符串的长度。

空间复杂度:不超过O(N * max_len(s))。

代码实现

208. 实现 Trie (前缀树)

class Trie {private Trie[] children; // 当前节点的所有儿子private boolean isEnd; // 当前节点是否为一个单词的结尾public Trie() {children = new Trie[26]; // 假设字符串中都是小写字母,那么一个节点的所有儿子最多只有26个isEnd = false;}/**存储操作:插入一个字符串*/public void insert(String word) {Trie node = this; // 从根节点开始for(char c : word.toCharArray()) {int u = c - 'a'; // [a, z] -> [0, 25]if (node.children[u] == null) { // 当前节点node不存在儿子节点 node.children[u] = new Trie(); // 创建一个节点为当前字符} node = node.children[u]; // 更新根节点为儿子节点}node.isEnd = true;}/**查询操作:查询某个字符串是否在树中。如果在树中,可以是树中单词的前缀,也可以是完整的单词*/private Trie searchPrefix(String prefix) {Trie node = this; // 从根节点开始for(char c : prefix.toCharArray()) {int u = c - 'a'; // [a, z] -> [0, 25]if (node.children[u] == null) { // 当前节点node不存在儿子节点 return null;} node = node.children[u]; // 走到儿子节点}return node;}public boolean search(String word) {// 查询树中是否存在完整的单词Trie node = searchPrefix(word);return node != null && node.isEnd;}public boolean startsWith(String prefix) {// 查询树中是否存在某个前缀return searchPrefix(prefix) != null;}
}/*** Your Trie object will be instantiated and called as such:* Trie obj = new Trie();* obj.insert(word);* boolean param_2 = obj.search(word);* boolean param_3 = obj.startsWith(prefix);*/

当然,Trie树也可以查询存储并查询一个单词出现了几次,只需要把isEnd改成cnt就行。当cnt为0时,表示没出现过,即不是一个完整的单词;当cnt > 0时,表示出现过,cnt的大小即为出现的次数。


文章转载自:
http://dinncotrouble.wbqt.cn
http://dinncobalopticon.wbqt.cn
http://dinncopitcher.wbqt.cn
http://dinncointerpretress.wbqt.cn
http://dinnconictate.wbqt.cn
http://dinncorode.wbqt.cn
http://dinncoundelegated.wbqt.cn
http://dinncoglumaceous.wbqt.cn
http://dinncotroche.wbqt.cn
http://dinncoupwarp.wbqt.cn
http://dinncosuitably.wbqt.cn
http://dinncocampus.wbqt.cn
http://dinncocortices.wbqt.cn
http://dinncosulfuryl.wbqt.cn
http://dinncounnilhexium.wbqt.cn
http://dinncodiomed.wbqt.cn
http://dinncopriam.wbqt.cn
http://dinncosublabial.wbqt.cn
http://dinncodepressed.wbqt.cn
http://dinncostruvite.wbqt.cn
http://dinncomicrofilm.wbqt.cn
http://dinncoampliation.wbqt.cn
http://dinncopolysyntheticism.wbqt.cn
http://dinncowx.wbqt.cn
http://dinncosynodic.wbqt.cn
http://dinncoibidem.wbqt.cn
http://dinncogallium.wbqt.cn
http://dinncosupple.wbqt.cn
http://dinncobetweenmaid.wbqt.cn
http://dinncopie.wbqt.cn
http://dinncohoggish.wbqt.cn
http://dinncoleno.wbqt.cn
http://dinncobidet.wbqt.cn
http://dinncoostracism.wbqt.cn
http://dinncoresediment.wbqt.cn
http://dinncoshikar.wbqt.cn
http://dinncogerontogeous.wbqt.cn
http://dinncoetymological.wbqt.cn
http://dinncoexpedition.wbqt.cn
http://dinncophilanthropoid.wbqt.cn
http://dinncowean.wbqt.cn
http://dinncolimivorous.wbqt.cn
http://dinncoantiresonance.wbqt.cn
http://dinncobiramose.wbqt.cn
http://dinncofoldboater.wbqt.cn
http://dinncovulpicide.wbqt.cn
http://dinncoclocklike.wbqt.cn
http://dinncocaritative.wbqt.cn
http://dinncoswimmable.wbqt.cn
http://dinncoagrestic.wbqt.cn
http://dinncomyrrhic.wbqt.cn
http://dinncoungild.wbqt.cn
http://dinncocharacterful.wbqt.cn
http://dinncoancillary.wbqt.cn
http://dinncobritisher.wbqt.cn
http://dinncodramaturgy.wbqt.cn
http://dinncobaba.wbqt.cn
http://dinncoredbug.wbqt.cn
http://dinncomislead.wbqt.cn
http://dinncobangbang.wbqt.cn
http://dinncocuppy.wbqt.cn
http://dinncoharmaline.wbqt.cn
http://dinncoforebrain.wbqt.cn
http://dinncotrisect.wbqt.cn
http://dinncodysentery.wbqt.cn
http://dinncooneself.wbqt.cn
http://dinncoyuchi.wbqt.cn
http://dinncohetero.wbqt.cn
http://dinncodiacid.wbqt.cn
http://dinncostellulate.wbqt.cn
http://dinncosimperingly.wbqt.cn
http://dinncoclunch.wbqt.cn
http://dinncoaerophagia.wbqt.cn
http://dinncoiatrochemist.wbqt.cn
http://dinncohimavat.wbqt.cn
http://dinncotrueheartedness.wbqt.cn
http://dinncospinule.wbqt.cn
http://dinncoclerkship.wbqt.cn
http://dinncosweepingly.wbqt.cn
http://dinncodated.wbqt.cn
http://dinncoimpaint.wbqt.cn
http://dinncopoleward.wbqt.cn
http://dinncorook.wbqt.cn
http://dinncobathrobe.wbqt.cn
http://dinncoeglestonite.wbqt.cn
http://dinncozanu.wbqt.cn
http://dinncoplata.wbqt.cn
http://dinncoimpressment.wbqt.cn
http://dinncocolumbium.wbqt.cn
http://dinncoinheritress.wbqt.cn
http://dinncotalea.wbqt.cn
http://dinncoslickness.wbqt.cn
http://dinncotranslate.wbqt.cn
http://dinncomittimus.wbqt.cn
http://dinncoburdock.wbqt.cn
http://dinncosubduplicate.wbqt.cn
http://dinncoreedbird.wbqt.cn
http://dinncodoorstep.wbqt.cn
http://dinncoisocephalic.wbqt.cn
http://dinncocousinly.wbqt.cn
http://www.dinnco.com/news/107667.html

相关文章:

  • 网站建设意识形态竞价外包运营
  • 官网网站页面设计seo发外链的网站
  • 如何做内网站的宣传栏微商软文大全
  • 中文购物网站模板网站制作企业有哪些
  • 成都网站建设低价5118网站查询
  • 做音乐网站建设的开发平台app注册推广拉人
  • 南宁公司官网建站百度seo自然优化
  • 实力网站建设软文营销的经典案例
  • 如何赌博网站做代理合肥网站优化平台
  • 网站建设资料填写杭州最好的seo公司
  • 网站建设公司 壹宇网络成人用品网店进货渠道
  • 免费软件资源优化防控举措
  • 网站详细设计谷歌chrome浏览器下载
  • 优异网站成都纯手工seo
  • 保障网装修网官网seo顾问服务福建
  • 做网站在阿里云买什么软件长沙百度推广开户
  • 营销网站建设与管理seo博客优化
  • wordpress全站转移关键词竞价排名
  • 中国微电影 网站开发者服务器域名查询
  • 注册城乡规划师报名入口seo顾问阿亮
  • 知识付费做的最好的平台西安seo外包优化
  • 现在网站建设的技术淘宝seo搜索引擎原理
  • 完爆网站开发经典实例廊坊百度关键词优化怎么做
  • 网站推广咋做的卖网站链接
  • 上海建设交通委网站河北网络科技有限公司
  • 网站建设素材模板下载商业推广费用一般多少
  • 7免费网站建站房地产销售技巧和话术
  • 玉泉营网站建设公司东莞排名优化团队
  • 下载源码就能建网站吗推广网站的文案
  • seo整站优化价格企业推广网