I have an issue creating an ordered list by preferences. Let's say I have 3 users (u1, u2, u3
) and 10 topics (t1,...,t10
). Each user will submit a list of topics ordered by preferences, for example :
u1 = [t3, t6, t9,...,t1]
;
u2 = [t7, t3, t8,...,t2]
;
u3 = [t1, t2, t7,...,t9]
.
Note that it's not mandatory for each user to submit a list containing all the 10 topics, for instance u2
may submit : u2 = [t5, t10]
and doesn't care about other topics.
The final result I'm looking for should be a single list u
which contains all the 10 topics ordered by preferences given u1, u2 and u3
.
So, what is the best algorithm to handle that task (with a generalization of N
topics and p
users) ?