summaryrefslogtreecommitdiff
path: root/graph-checker/src/compute.rs
diff options
context:
space:
mode:
Diffstat (limited to 'graph-checker/src/compute.rs')
-rw-r--r--graph-checker/src/compute.rs13
1 files changed, 5 insertions, 8 deletions
diff --git a/graph-checker/src/compute.rs b/graph-checker/src/compute.rs
index 0beaad9..c3ee046 100644
--- a/graph-checker/src/compute.rs
+++ b/graph-checker/src/compute.rs
@@ -60,14 +60,12 @@ pub async fn dominating_numbers(
if geodesic_sets.len() == 1 {
fg = Some(0)
} else {
- for i in 0..geodesic_sets.len() {
- let check = &geodesic_sets[i];
+ for (i, check) in geodesic_sets.iter().enumerate() {
let mut verts = check.clone();
- for j in 0..geodesic_sets.len() {
+ for (j, set) in geodesic_sets.iter().enumerate() {
if i == j {
continue;
}
- let set = &geodesic_sets[j];
for v in 0..g.size {
if check[v] == set[v] {
verts[v] = 0;
@@ -75,11 +73,10 @@ pub async fn dominating_numbers(
}
}
let new_fg = verts.iter().sum::<u32>();
- if new_fg > 0 {
- if new_fg < fg.unwrap_or(g.size as u32) {
- fg = Some(new_fg);
- }
+ if new_fg > 0 && new_fg < fg.unwrap_or(g.size as u32) {
+ fg = Some(new_fg);
}
+
if let Some(fg) = fg {
if fg == 1 {
break;