trie和radix trie数据结构之间有什么区别?

发布于 2021-01-31 15:49:20

特里基数特里 数据结构是一回事吗?

如果它们相同,那么基数特里(AKA Patricia trie)是什么意思?

关注者
0
被浏览
104
1 个回答
  • 面试哥
    面试哥 2021-01-31
    为面试而生,有面试问题,就找面试哥。

    基数树是trie的压缩版本。在特里树中,在每个边上都写一个字母,而在PATRICIA树(或基数树)中则存储整个单词。

    现在,假设你有话hellohathave。要将它们存储在一个 trie中 ,它看起来像:

        e - l - l - o
      /
    h - a - t
          \
           v - e
    

    您需要九个节点。我将字母放置在节点中,但实际上它们标记了边缘。

    在基数树中,您将具有:

                *
               /
            (ello)
             /
    * - h - * -(a) - * - (t) - *
                     \
                     (ve)
                       \
                        *
    

    而且您只需要五个节点。在上图中,节点是星号。

    因此,总的来说,基数树占用 更少的内存 ,但是很难实现。否则,两者的用例几乎相同。



推荐阅读
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看