注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号 
x
在一个社交媒体网络中,每个用户都有其好友列表。给定一个表示社交关系的图(用一个 Map<Integer, List<Integer>> 表示,其中键是用户ID,值是该用户的直接好友列表),以及一个特定用户ID,请为该用户推荐一个“最佳新朋友”。推荐的规则是:
优先推荐:与当前用户有最多共同好友的用户。
次级规则:如果共同好友数相同,推荐用户ID较小的用户。
限制条件:不能推荐当前用户自己,且不能推荐当前用户的直接好友。
输入:
connections:一个映射,表示每个用户及其直接好友。
person:目标用户ID。
输出:
返回推荐的新朋友的用户ID。
import java.util.*;
class Solution {
public static int bestRecommendation(Map<Integer, List<Integer>> connections, int person) {
List<Integer> directFriends = connections.getOrDefault(person, new ArrayList<>());
Set<Integer> Map<Integer, List<Integer>> connections = new HashMap<>();
connections.put(0, Arrays.asList(1, 2));
connections.put(1, Arrays.asList(0));
connections.put(2, Arrays.asList(0));
int recommended = bestRecommendation(connections, 0);
System.out.println(recommended);
}
}
|