我有一个用于表示 Person 对象的类。在每个Person对象中,有多个数组列表,包含例如friends,family和其他Person对象。我现在试图找出找到那个人的亲属的最佳方法。
例如:
A有B作为家庭...... B有X和Y作为家庭...... X有Z作为家庭......依此类推。
在上面的例子中,A将有4个家庭成员直到人Z.使用嵌套循环似乎是一个非常糟糕的想法,特别是如果数据非常大。建议更好的数据结构或解决这个问题的有效方法将是很好的。
答案 0 :(得分:1)
好像你似乎正在尝试进行图遍历。查看深度优先搜索或广度优先搜索算法,看看是否可以转换这些算法以满足您的需求
答案 1 :(得分:0)
我建议使用这个http://algs4.cs.princeton.edu/41graph/Graph.java.html类,并根据您的数据实现DFS或BFS。对于这种情况,BFS可能更有效,看看这个