擅长:python、mysql、java
<p>例如,如果您想强制用户使用至少4个字母的数字,您可以保留一个键值映射、内存或磁盘,其中的键都是4个字母的组合(如果不区分大小写,则不太多,否则可以限制为3个),值是以组合开头的所有字符串的位置列表。在</p>
<p>在用户键入三个(或四个)字母后,您将立即获得所有可能的字符串。从这一点开始,你就在这个子集上循环。在</p>
<p>平均来说,这个子集足够小,即500米除以26^4…就像例子一样。实际上更大,因为可能不是所有的4个字母都可以作为字符串的前缀。在</p>
<p>忘了说:当您向大列表添加一个新字符串时,您还更新了与映射中的键对应的索引列表。在</p>