我面临以下问题:
假设你是一个社交网络用户,因此有一个朋友列表F(u)。分区是函数F->G,其中G是一组组,例如高中、大学、工作等。
我需要想出算法来划分F:
- 输入是F以及F中每个f的F (f)(每个u的朋友的朋友列表)。
- 在运行期间,允许算法向u提问(例如,“对于某些特定用户v的最佳组是什么?”)。
- 问题的数量应保持在最低限度(什么是最低限度并不是一个明确的数字,但我会说 5% 的朋友数量似乎是正确的)。
显然,生成的分区不会是最佳的,但它应该可以作为以后改进的起点。
任何想法将不胜感激
编辑:不,这不是家庭作业。我相信家庭作业会有更明确的要求和目标功能。无论如何,不,这实际上是我面临的现实世界问题。
我也可能已经简化了一点,但实际上用户可能是许多组的一部分(所以它更像是F->P(G),其中P(G)是权力组,如果G),所以更好的算法将能够做到这一点。