Trie树总结

本文介绍了Trie树,又称字典树或前缀树,是一种用于存储字符串的数据结构。文章详细阐述了Trie树的节点类型,包括字符节点、数字节点和其他类型,并提供了插入和查询操作的基本原理。Trie树的优势在于存储字符串时能有效利用相同前缀,且查询效率高。文章强调在实际问题中,查询操作通常会有所变形,是面试和应用中的重点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

前缀树,字典树,Trie树都是指同一个数据结构。


提示:以下是本篇文章正文内容,下面案例可供参考

一、Trie树/字典树/前缀树

是一棵 N 叉树。前缀树用于存储、查找字符串。前缀树的每一个结点代表一个字符串的前缀。每一个结点会有多个子结点,通往不同子结点的路径上有着不同的字符。子结点代表的字符串是由结点本身的原始字符串 ,以及通往该子结点路径上所有的字符组成的。

前缀树的一个重要的特性是,结点所有的后代都与该结点相关的字符串有着共同的前缀,这是前缀树名称的由来。 前缀树有着广泛的应用,例如自动补全,拼写检查等等。

二、代码

1.Trie树节点

Trie树首先是一颗树,节点的类型:一般Trie中存储的要么全是消息字母,要么全是小写字母,要么全是数字,要么全是0和1。

字符节点

struct Node{
   
	Node *son[26];
	bool sign; //按照题目要求标记前缀
	Node() sign(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值