【发布时间】:2010-09-17 14:33:25
【问题描述】:
我们有一个自动完成列表,当您向某人发送电子邮件时会填充该列表,这一切都很好,直到列表变得非常大,您需要输入越来越多的地址才能找到您想要的地址,这违背了自动完成的目的
我在想应该添加一些逻辑,以便自动完成结果应该按最近联系或最常联系的某些功能进行排序,而不仅仅是按字母顺序。
我想知道是否有任何已知的用于此类搜索的好的算法,或者是否有人有任何建议。
我在想只是一个积分系统的东西,比如当天是 5 分,过去三天是 4 分,上周是 3 分,上个月是 2 分,过去 6 个月是 1 分。那么在大多数情况下,25+ 是 5 分,15+ 是 4,10+ 是 3,5+ 是 2,2+ 是 1。除了这些数字“感觉”正确之外,没有其他真正的逻辑。
除了随意挑选的数字之外,还有没有人有任何意见?如果您能说明您认为它们比我的更好的原因,也欢迎其他数字
编辑:这主要是在一个商业环境中,其中最近(是的,可以编造单词)通常与频率一样重要。此外,在某个特定点之后,说与您交谈 80 次和说 30 次的人之间确实没有太大区别。
【问题讨论】:
标签: algorithm language-agnostic usability