algorithm - 个性化自动完成

标签 algorithm autocomplete filter ranking autosuggest

我想实现自动完成(自动建议)- 当用户开始输入单词时,会弹出建议。

我希望能够根据提出请求的用户呈现建议列表。

例如,我有一个书单,我知道每个用户读过什么书,喜欢什么书,读过什么语言。 我希望 autosuggest 能够给出一个建议列表,仅针对用户会喜欢的书籍进行过滤,并使用用户的语言并根据用户的喜好进行排名。

有人知道适合这个的数据结构吗?大多数自动完成算法都使用树,但我不想为每个用户使用个人数据结构,因为维护它会非常耗费资源。

最佳答案

使用书籍的数据库(例如 MySQL)及其属性,如语言:法语、类型:神秘、作者:让-克劳德等。用户对书籍的偏好可以在配套数据库中,或者用户可以从网页上的选项中进行选择。

在网页上,使用 jQuery UI 自动完成小部件。使用数据:选项将用户的书籍偏好传递给创建自定义查询的 php 查询管理器,例如,语言:法语,类型:神秘,作者:让-克劳德,触发 MySQL 中的查询,并返回书名将这些属性通过 JSON 发送到网页。自动完成创建一个下拉框,用户可以从中进行选择。

许多人使用此架构或其变体。

关于algorithm - 个性化自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6689817/

相关文章:

javascript - 好的 jQuery Autocomplete 不是 jQuery UI 的一部分?

filter - 在 ansible with_items 循环中根据条件跳过某些项目

excel - 自动筛选日期错误 : "Method of Range Class Failed"

python - 将集合划分为元素数量相等的子集

algorithm - 均匀生成最多重复 k 次的排列?

java - 找到第 K 个最小的元素。循环

python - 在同一行过滤来自 pandas.groupby 的结果

c++ - 是否有某种算法可以反向过滤N个二叉树节点?

jquery Autocomplete 如何始终显示 renderMenu,无论是否有源匹配?

css - map 自动完成未以模态 Angular 显示。 z-index 不工作