おすすめの友達リストをまとめたいです。
私が考えていたのは次のようなものでした(これは半疑似(sudo)コードです!):
recommended_friends = []
friends.each do |friend|
while recommeded_friends.length < 10
friend.friends.each do |friend|
if friend.in?(recommeded_friends)
recommeded_friends[friend][counter] += 1
else
recommeded_friends << [friend, 0]
end
end
end
end
しかし、これは明らかに機能しません。皆さんはこれにどのようにアプローチしますか?
提案をありがとう。
表 (一部は短縮されています):
Users:
id | name
Friendships
id | user_1_id | user_2_id | requested_at | accepted_at | declined_at |
user1 と user2 の間のフレンドシップは、DB で 1 回だけ発生します。