我正在尝试为驼峰案例搜索实现一种算法(跳过大写字母之间的字母),例如:
给定列表和输入字符串。
列表:
- ManualProxy.java
- MapPropertyBase.java
- MaxProduct.java
- ManualProviderBase.java
- Map.java
输入:
- “Ma” - 我们应该从词典中返回所有单词,因为全部
他们从马
开始
- “MaP” - 返回除“Map.java”之外的所有内容,因为它们以“Ma”开头
第二个单词以“P”
开头
- “MProd” - 返回MaxProduct.java,因为第一个单词以
“M”和第二个单词以“Prod”开头
我考虑使用trie,但问题是我需要遍历整个树来查找第二个大写字母。另一种选择是使用trie作为大写字母并尝试节点。但在这种情况下,我必须从节点返回,如果有匹配,则继续遍历下一个大写字母。
有没有更好的方法解决这个问题?