【发布时间】:2022-01-25 15:27:39
【问题描述】:
我有一个关于 Hashmap 的问题,该 Hashmap 被实现为看起来像这样的家谱。 Hashmap 的键值是人的名字,值来自 Person 类,该类再次包含名字、性别和带有孩子的 Arraylist。孩子们又是典型的人。 我想找到一种方法来制作一个函数,它应该返回一个包含两个字段的浮点数组,在第一个字段中,一个人从所有人中拥有的孩子的最大值和所有人的孩子的平均值。应该是这样的:
float[] describe(Map<String, Person> m) {
}
这是 Hashmap:(已经填充了键和值,并且它们与子项之间也有链接)
Map<String, Person> allPersons = new HashMap<String, Person>();
这是Person类:
class Person {
String name;
String sex;
List<Person> children;
public Person(String name, String sex) {
this.name = name;
this.sex = sex;
this.children = new ArrayList<Person>();
}
}
我的问题是如何遍历 Hashmap 并获得每个人拥有的孩子的数量。
【问题讨论】:
-
“一个人从所有人中最多可以拥有多少个孩子”——你关心孙辈的数量吗?如果是,那就是 DFS 遍历。
标签: java arraylist hashmap family-tree