diff --git a/pom.xml b/pom.xml index 61902a166..8c90f5273 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.github.btrekkie.connectivity dynamic-connectivity - 0.1.2 + 0.1.3 dynamic-connectivity Data structure for dynamic connectivity in undirected graphs diff --git a/src/main/java/com/github/btrekkie/connectivity/ConnGraph.java b/src/main/java/com/github/btrekkie/connectivity/ConnGraph.java index 2150dd9fb..d9225011e 100644 --- a/src/main/java/com/github/btrekkie/connectivity/ConnGraph.java +++ b/src/main/java/com/github/btrekkie/connectivity/ConnGraph.java @@ -1073,20 +1073,21 @@ public class ConnGraph { EulerTourVertex lowerVertex1 = vertex; EulerTourVertex lowerVertex2 = edge.vertex2; for (int lowerLevel = level - 1; lowerLevel > 0; lowerLevel--) { - int size = 0; + // Compute the total size if we combine the Euler tour trees + int combinedSize = 1; if (lowerVertex1.lowerVertex != null) { - size = lowerVertex1.lowerVertex.arbitraryVisit.root().size; + combinedSize += lowerVertex1.lowerVertex.arbitraryVisit.root().size; } else { - size = 1; + combinedSize++; } if (lowerVertex2.lowerVertex != null) { - size += lowerVertex2.lowerVertex.arbitraryVisit.root().size; + combinedSize += lowerVertex2.lowerVertex.arbitraryVisit.root().size; } else { - size++; + combinedSize++; } // X EulerTourVertices = (2 * X - 1) EulerTourNodes - if (size > 2 * (1 << lowerLevel) - 1) { + if (combinedSize > 2 * (1 << lowerLevel) - 1) { break; } diff --git a/target/dynamic-connectivity-0.1.2.jar b/target/dynamic-connectivity-0.1.2.jar deleted file mode 100644 index c82ff9e74..000000000 Binary files a/target/dynamic-connectivity-0.1.2.jar and /dev/null differ diff --git a/target/dynamic-connectivity-0.1.2-jar-with-dependencies.jar b/target/dynamic-connectivity-0.1.3-jar-with-dependencies.jar similarity index 66% rename from target/dynamic-connectivity-0.1.2-jar-with-dependencies.jar rename to target/dynamic-connectivity-0.1.3-jar-with-dependencies.jar index aeb0bbd55..f7a999fb8 100644 Binary files a/target/dynamic-connectivity-0.1.2-jar-with-dependencies.jar and b/target/dynamic-connectivity-0.1.3-jar-with-dependencies.jar differ diff --git a/target/dynamic-connectivity-0.1.3.jar b/target/dynamic-connectivity-0.1.3.jar new file mode 100644 index 000000000..cf2ff3a83 Binary files /dev/null and b/target/dynamic-connectivity-0.1.3.jar differ