Content assist provides you with a list of suggested completions for partially entered strings.
内容协助为您提供部分输入的字符串的建议完成列表。描述大概如上,我不知道怎么用一个更精确的词来形容。
sublime中有这个功能,你输入“不完整的字符”,它会给你返回,包含这些字母的所有结果。譬如:输入 ds 可以得到 desk ,尽管中间间隔了一个 字母 e。
我就想知道这是怎么实现的,原理是什么?
而且,这个功能,有名字吗(我其实不知道这个功能应该叫啥名字,所以也妨碍了在网上搜寻答案)?
@boxsnake 给的是搜索数组的例子,返回的结果还应该排序的,“avsdsss”优先级最高,它包含了连续的“ds”。“everybody”也应该命中,它包含了“d”。
搜索数组的时间复杂度太高了,当关键字很多的时候,速度基本不可接受。
高效可行的方法是用字符串搜索树。
海量数据处理之Trie树(字典树)