字典树Trie练习 HihoCoder 1014
题目链接
字典树模板题
测试模板
此题这里允许单词重复,(读错题WA好多
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <stdlib.h>
using namespace std;
const int N = 1e5 + 5;
struct Trie
{int next[N*30][26], sz[N*30*26], ed[N*30*26], pos, root;int newnode(){for(int i = 0; i < 26; i++)next[pos][i] = -1;sz[pos] = 0;ed[pos] = 0;return pos++;}void init(){pos = 0;root = newnode();}void insert(string s){int n = s.size();int now = root;sz[now]++;for(int i = 0; i < n; i++){int b = s[i]-'a';if(next[now][b] == -1) next[now][b] = newnode();now = next[now][b];sz[now]++;}/*if(ed[now] == 0)ed[now] = 1;else{int now = root;sz[now]--;for(int i = 0; i < n; i++){int b = s[i]-'a';now = next[now][b];sz[now]--;}}*/}int query(string s){int n = s.size();int now = root;for(int i = 0; i < n; i++){int b = s[i]-'a';if(next[now][b] == -1) return 0;now = next[now][b];}return sz[now];}
};
Trie t;
int n,m;
string tmp;
int main()
{t.init();scanf("%d", &n);for(int i = 0; i < n; i++){cin>>tmp;t.insert(tmp);}scanf("%d", &m);for(int i = 0; i < m; i++){cin>>tmp;printf("%d\n", t.query(tmp));}return 0;
}
转载于:https://www.cnblogs.com/Alruddy/p/7467487.html
字典树Trie练习 HihoCoder 1014相关推荐
- 快乐学算法之:字典树Trie
文章目录 简介 Trie的特性 Trie树和Hashing,BST的对比 Trie树的程序化表示 Trie树的插入 Trie树的搜索 Trie树的删除 Trie树的疑惑 简介 字典树的英文名叫做Tri ...
- HDU 1247 Hat’s Words 字典树(Trie树)
HDU 1247 Hat's Words 字典树(Trie树) 字典树的建立是应该都是一样的 下面是我的做法: 建立完后, 对每一个单词都进行find_string()判断是否符合, 分别对其分成两半 ...
- 《恋上数据结构第1季》字典树 Trie
字典树Trie Trie 简介 Trie 实现 接口设计 源码 测试 数据结构与算法笔记目录:<恋上数据结构> 笔记目录 想加深 Java 基础推荐看这个: Java 强化笔记目录 Tri ...
- Java实现字典树 Trie
Java实现字典树 Trie 一.字典树介绍 二.Trie实现以及基本的插入查询操作 数组实现: HashMap实现: Trie插入(这里都以数组实现为例): Trie查询: 三.相关例题: 1.le ...
- 用Python实现字典树(Trie)与双数组字典树(DATrie)
1. 字典树(Trie) 假如我们把字典中的词以记录的形式(无序)存入数据库中.现给定一串字符,要查找该字符串是否为字典中的词.因为数据库中的记录是无序的,所以,最朴素的方法就逐记录匹配.此方法简单, ...
- php trie,数据结构-PHP 字典树(Trie)的实现
这篇文章介绍一下字典树的实现原理,又称单词查找树.Trie树,是一种树形结构,是一种哈希树的变种.典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统 ...
- 字典树(trie树)、后缀树
(1)字典树(Trie树) Trie是个简单但实用的数据结构,通常用于实现字典查询.我们做即时响应用户输入的AJAX搜索框时,就是Trie开始.本质上,Trie是一颗存储多个字符串的树.相邻节点间的边 ...
- ACM入门之【字典树/Trie】
字典树,英文名 trie.顾名思义,就是一个像字典一样的树. 常用模板: const int N=1e5+10; //注意: N的大小是所有的字符串的总长度,因为最坏的情况下是一个字符就是一个结点 i ...
- 字典树(Trie树)
Trie树就是字典树,其核心思想就是空间换时间. 举个简单的例子. 给你100000个长度不超过10的单词.对于每一个单词,我们要判断他出没出现过,如果出现了,第一次出现第几个位置. 这题当然可以用h ...
- 数据结构之字典树Trie
文章目录 Trie 字典树 前缀树 什么是Trie 基本概念 基本性质 应用场景 优点 手写一个trie Trie字典树的前缀查询 实现Trie(前缀树) LeetCode208 添加与搜索单词 - ...
最新文章
- python中文编码-Python中文乱码(转)
- python网络爬虫权威指南 百度云-Python网络爬虫权威指南 PDF 第2版
- Fragment使用LocalBroadcastManager接收广播消息
- windbg 符号表
- jms mdb_MDB!= JMS,反之亦然
- python random()*10的值不可能是_Python
- linux 文件权限 rwt,Linux下修改文件权限(所有权)
- C# XML文件读取
- 吾爱破解python百度文库下载源码_【原创源码】【python】淘豆网文档下载探索
- html切图软件,切图工具/插件介绍
- 第三方登陆之微博登录
- 微信开放平台创建移动应用-必过
- matlab 提取子波,地震子波提取研究
- nginx PHP499错误,Nginx日志错误码499的问题解决方法
- XML 中大于等于小于等于的写法
- CNN | 02实现几何图形分类
- python爬虫初试-下载LOL全英雄皮肤
- ps4变更账号服务器,PSN ID怎么改?详细步骤教你如何更改PS4的PSN ID
- 前端例程20211122:盐酸与氢氧化钠溶液中和pH计算工具
- 计算天数c语言实验报告,c语言实例--计算天数
热门文章
- Final Cut Pro X for Mac(fcpx视频剪辑)中文版
- Premiere教程,认识 Pr 以及电脑配置
- 苹果Mac强大的思维导图软件:MindNode 帮你轻松理清思路
- 如何使用“查找”App 定位丢失的设备或物品?
- JetBrains 快捷键技巧:IntelliJ IDEA 中,你完全不需要鼠标的 10 种情况
- 如何在苹果Mac上使用 Siri?
- 如何在Adobe Illustrator中矢量化图像
- Spring cloud--鸿鹄Cloud分布式微服务云系统—Config
- 听说你还不理解JavaScript闭包
- JavaScript深入之执行上下文栈 1