#Trie01. 字符串统计

字符串统计

GESP C++ Trie训练题

题目名称:字符串统计

知识点

  • Trie字典树(前缀树)
  • 字符串处理
  • 数据结构应用

题目描述

给定n个字符串,进行m次查询,每次查询一个字符串出现的次数。

要求:

  • 使用Trie字典树实现
  • 高效地存储和查询字符串

输入格式

第一行包含两个整数 n 和 m,分别表示字符串的数量和查询的次数。 (1 ≤ n ≤ 1000, 1 ≤ m ≤ 1000)

接下来n行,每行一个字符串,表示要插入的字符串。 (字符串只包含小写字母,长度不超过50)

接下来m行,每行一个字符串,表示要查询的字符串。

输出格式

对于每个查询,输出一行,表示该字符串出现的次数。


样例输入1

5 3
cat
car
cat
dog
cat
cat
car
bat

样例输出1

3
1
0

样例1说明:

  • "cat"出现了3次
  • "car"出现了1次
  • "bat"出现了0次(不存在)

样例输入2

3 2
hello
world
hello
hello
world

样例输出2

2
1

样例2说明:

  • "hello"出现了2次
  • "world"出现了1次

提示

  1. 使用Trie字典树存储字符串
  2. 插入时在单词结尾节点计数+1
  3. 查询时返回单词结尾节点的计数
  4. 时间复杂度:O(ns + ms),其中s是字符串平均长度


考察知识点总结

  • ✅ Trie字典树的基本操作(插入、查询)
  • ✅ 字符串处理
  • ✅ 数组实现Trie树
  • ✅ 计数统计

难度评估

难度: ⭐⭐⭐☆☆(中等)

适合: 学习Trie字典树基础应用