采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
c++版实现trie为啥要用vector来存储节点,感觉有点理不清。求老师解释在java数据结构进阶好像是用的指针
我在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,就更厉害啦!
加油!:)
登录后可查看更多问答,登录/注册
动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…
10.5k 16
1.4k 17
1.4k 14
1.3k 14