农场主需要管理他的牛群,他想要设计一个系统来存储牛群中每头牛的名字。为了方便管理,他决定使用前缀树(Trie)来存储牛的名字。 实现一个名为CowTrie的类,包含以下方法: void insert(string name):向前缀树中插入牛的名字name。 bool search(string name):返回前缀树中是否存在名字为name的牛。 bool startsWith(string prefix):返回前缀树中是否存在名字前缀为prefix的牛。 请实现一个名为manageCowNames的函数,接收两个参数: vector operations:表示操作的字符串数组,包含"CowTrie"、"insert"、"search"和"startsWith"。 vector args:表示操作对应的参数数组。 返回一个vector,表示操作的输出结果。
示例1
输入
["CowTrie", "insert", "search", "search", "startsWith", "insert", "search"],[[], ["apple"], ["apple"], ["app"], ["app"], ["app"], ["app"]]
输出
["null","null","true","false","true","null","true"]
示例2
输入
["CowTrie", "insert", "search", "search", "startsWith", "insert", "search"],[[], ["milk"], ["milk"], ["mil"], ["mil"], ["mil"], ["mil"]]
输出
["null","null","true","false","true","null","true"]
备注:
1 name.length, prefix.length name 和 prefix 仅由小写英文字母组成insert、search 和 startsWith 调用次数 总计 不超过 3 * 10^4 次
加载中...