在GitHub上的play-leetcode 208 实现trie
来源:10-5 Trie字典树和简单的模式匹配
Penguinbupt
2018-07-26
c++版实现trie为啥要用vector来存储节点,感觉有点理不清。求老师解释
在java数据结构进阶好像是用的指针
写回答
1回答
-
我在Play-Leetcode 208的实现里,trie是一个节点数组。在每一个节点中,每一个字符对应一个索引index(节点中的next是是map<char, int>类型的),trie[index]则是这个字符相对应的那个节点:)
如果对这种方式不习惯,并且使用Java语言的话,可以参考这个课程的官方github中Trie的实现。传送门(整章各小节代码):https://github.com/liuyubobobo/Play-with-Data-Structures/tree/master/10-Trie
其中,也有208号问题的代码,传送门:https://github.com/liuyubobobo/Play-with-Data-Structures/blob/master/10-Trie/04-Prefix-in-Trie/src/Trie208.java
当然,如果根据这个课程的讲解,另外实现一版链式存储的(基于指针的)C++的Trie,就更厉害啦!
加油!:)
00
相似问题