问题描述
我正在开发一个 UI,它有一堆标题分组在多个类别下(比方说电影列表)。假设我有类别 1、类别 2、类别 3 等,每个类别下有 20 部电影。问题是有些电影在多个类别中重复出现,如果它们出现在多个类别的前 5 名中,那么它在 UI 中看起来很糟糕,因为它看起来是重复的。这种分类的来源不在我的控制范围内,我只是从另一个服务接收这些数据。我的要求是寻找跨类别的重复项,如果电影已经出现在更高排名(基于显示顺序)的类别中,则对其进行处罚并将其在类别中排名靠后。例如,Movie1 出现在 Category1 中的 Rank2。 Movie1 也出现在 Category2 的 Rank4 中。我想将 Movie1 移动到类别 2 中更低的排名(比如排名 15 或排名 20),因为它已经出现在前一个类别中的更高排名。
Problem:
--------
Category1:
1. Movie1
2. Movie2
3. Movie3
...
Category2:
1. Movie1
2. Movie4
3. Movie5
...
Category3:
1. Movie4
2. Movie6
3. Movie7
...
在上述情况下,我想将类别 2 中的电影 1 排到第 10 位或以下,因为它已经出现在类别 1 中的相同或更高级别。同样,我想将第 3 类中的 Movie4 排名下降,因为它出现在更高等级的更高类别中。
我正在考虑为类别分配权重(按降序),然后根据排名+权重计算每部电影的得分,然后使用它对重复的电影进行排名。我不是算法、排名等方面的专家,但我觉得这将是一个常见的用例,并且可能已经有解决此类排名问题的方法。有人可以在这里指导我吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)