我有一个代码,它将二分图作为输入并返回一个带有键“1”的映射,其值是“set1 中的节点”和键“2”的列表,其值是“set2 中的节点”列表。现在,地图是可变的。从理论上讲,我应该使用防御性副本来返回地图。但是,在这种情况下,真的需要吗?看起来有点矫枉过正。
前任:
class BiPartite {
Graph graph;
Map bipartite
Bipartite(graph) {
this.graph = graph;
}
void calcBipartite() {
// calculate map
}
Map getMap() {
// should i make defensive copy ? Appears overkill.
}
}