🗒️208. 实现 Trie (前缀树)
2025-9-9
| 2025-9-9
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
创建时间
Sep 9, 2025 03:27 PM
Trie(发音类似 "try")或者说 前缀树 是一种树形数据结构,用于高效地存储和检索字符串数据集中的键。这一数据结构有相当多的应用情景,例如自动补全和拼写检查。
请你实现 Trie 类:
  • Trie() 初始化前缀树对象。
  • void insert(String word) 向前缀树中插入字符串 word 。
  • boolean search(String word) 如果字符串 word 在前缀树中,返回 true(即,在检索之前已经插入);否则,返回 false 。
  • boolean startsWith(String prefix) 如果之前已经插入的字符串 word 的前缀之一为 prefix ,返回 true ;否则,返回 false 。

字典树(trie)§6.1 基础

字典树的原理都是在单词中最后一个字母所在的树中位置打上 end 标记。
下面的写法,可以看作是将一棵树中没有分支的节点去掉。只保留有字幕的节点,大大节省空间。特别是在单词少,但是单词字母多的情况。且这一种写法是将内存一次性申请出来。
第二种写法,是每次遇到一个新的位置字母就生成。

📎 参考

 
  • 【题单】常用数据结构(前缀和/差分/栈/队列/堆/字典树/并查集/树状数组/线段树)
  • 3597. 分割字符串LCP 30. 魔塔游戏
    Loading...