我正在学习基数树(也称为压缩尝试)和Patricia尝试,但是我发现关于它们实际上是否相同的冲突信息。当节点是唯一的子节点时,可以通过将节点与其父节点合并来从基数(未压缩)的树中获得基数树。这也适用于帕特里夏(Patricia)尝试。两种数据结构在哪些方面有所不同?
例如,NIST将两者列出为相同:
帕特里夏树
(数据结构)
定义:Trie的紧凑表示,其中作为唯一子节点的任何节点都与其父节点合并。
也称为基数树。
网络上的许多消息来源都声称相同。但是,显然Patricia尝试是基数树的特例。维基百科条目说:
PATRICIA尝试是基数等于2的基数尝试,这意味着将分别比较密钥的每个位,并且每个节点都是双向(即,左与右)分支。
我不太明白。区别仅在于进行查找时进行比较的方式吗?每个节点如何成为“双向分支”?ALPHABET_SIZE
给定节点最多应该有最多分支吗?
有人可以澄清吗?出于实际目的,基数尝试是否通常像Patricia尝试一样实现(因此通常被认为是相同的)?还是不能做出这样的概括?