我对后来在Visual Studio Code和Google Chrome Developer中找到的Sublime强大的搜索功能印象深刻。
一个非常基本的搜索算法可能会使用Trie,我猜这个搜索Sublime等文件似乎是某种多向Trie(如果有这样的东西!),即如果你有一个文件名,如:
“I-AM-A-甚大精美创建的文件和出头,else.js”
并且你搜索“创建的文件”,“文件创建”,“美丽的东西”,“其他大”,“大其他”或该文件名称的任何其他字符串组合,Sublime和Visual Studio代码将找到它和其他立刻有类似名字的文件。 (谷歌Chrome开发者版本虽然不是很强大,但这不是重点)。
所以,我稍微挖掘了Visual Studio的源代码,但仍然无法弄清楚搜索是如何实现的以及使用了哪种算法。我不是在寻找它的代码。只需要了解一个高级理论,即如何实现这个为我们的开发人员节省大量时间的强大功能。