平时不怎么写Trie,随便YY了一种。Trie的头结点用'^'表示,每一条路径的末尾用结点'$'表示,值保存在普通节点中。每一次插入或者查询的操作都是O(n)的时间,感觉startsWith()完全没必要,因为这个函数的逻辑完全被search cover掉了,下面是程序。