findCentralNodes method
Находит центральные узлы графа Центральным считается узел, от которого максимальное расстояние до любого листа минимально
Implementation
Set<Node> findCentralNodes() {
if (nodes.length <= 2) return nodes.values.toSet();
var current = nodes.values.toSet();
while (current.length > 2) {
final leaves = current
.where(
(node) => getNodeEdges(node).intersection(current).isEmpty,
)
.toSet();
current = current.difference(leaves);
}
return current;
}