From 05d678a18940b879b68211ab9bc1ef2d04160989 Mon Sep 17 00:00:00 2001 From: William Jacobs Date: Sat, 16 Mar 2019 14:42:36 -0400 Subject: [PATCH] Split removeEdge and optimize() into smaller methods This moves a bit of functionality from ConnGraph.removeEdge and ConnGraph.optimize() into new methods, in order to improve readability. --- pom.xml | 4 +- .../btrekkie/connectivity/ConnGraph.java | 92 ++++++++++-------- ...nnectivity-0.1.1-jar-with-dependencies.jar | Bin 36024 -> 0 bytes target/dynamic-connectivity-0.1.1.jar | Bin 16831 -> 0 bytes ...nnectivity-0.1.2-jar-with-dependencies.jar | Bin 0 -> 36143 bytes target/dynamic-connectivity-0.1.2.jar | Bin 0 -> 16934 bytes 6 files changed, 55 insertions(+), 41 deletions(-) delete mode 100644 target/dynamic-connectivity-0.1.1-jar-with-dependencies.jar delete mode 100644 target/dynamic-connectivity-0.1.1.jar create mode 100644 target/dynamic-connectivity-0.1.2-jar-with-dependencies.jar create mode 100644 target/dynamic-connectivity-0.1.2.jar diff --git a/pom.xml b/pom.xml index f3c88c5c5..61902a166 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.github.btrekkie.connectivity dynamic-connectivity - 0.1.1 + 0.1.2 dynamic-connectivity Data structure for dynamic connectivity in undirected graphs @@ -43,7 +43,7 @@ com.github.btrekkie RedBlackNode - 1.0.0 + 1.0.1 junit diff --git a/src/main/java/com/github/btrekkie/connectivity/ConnGraph.java b/src/main/java/com/github/btrekkie/connectivity/ConnGraph.java index c60b7db2f..2150dd9fb 100644 --- a/src/main/java/com/github/btrekkie/connectivity/ConnGraph.java +++ b/src/main/java/com/github/btrekkie/connectivity/ConnGraph.java @@ -75,8 +75,8 @@ import java.util.Map; * reason they are probabilistic is that they involve hash lookups, using the vertexInfo and VertexInfo.edges hash maps. * Given that each ConnVertex has a random hash code, it is easy to demonstrate that lookups take O(1) expected time. * Furthermore, I claim that they take O(log N / log log N) time with high probability. This claim is sufficient to - * establish that all time bounds that are at least O(log N / log log N) if we exclude the hash lookup can be sustained - * if we add the qualifier "with high probability." + * establish that all time bounds that are at least O(log N / log log N) if we exclude hash lookups can be sustained if + * we add the qualifier "with high probability." * * This claim is based on information presented in * https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-851-advanced-data-structures-spring-2012/lecture-videos/session-10-dictionaries/ . @@ -258,7 +258,7 @@ public class ConnGraph { /** * Equivalent implementation is contractual. * - * This method is useful for when a node's lists (graphListHead or forestListHead) or a vertex's arbitrary visit + * This method is useful for when an EulerTourVertex's lists (graphListHead or forestListHead) or arbitrary visit * change, as these affect the hasGraphEdge and hasForestEdge augmentations. */ private void augmentAncestorFlags(EulerTourNode node) { @@ -505,6 +505,33 @@ public class ConnGraph { return new EulerTourEdge(newNode, max); } + /** Removes the specified edge from the Euler tour forest F_i. */ + private void removeForestEdge(EulerTourEdge edge) { + EulerTourNode firstNode; + EulerTourNode secondNode; + if (edge.visit1.compareTo(edge.visit2) < 0) { + firstNode = edge.visit1; + secondNode = edge.visit2; + } else { + firstNode = edge.visit2; + secondNode = edge.visit1; + } + + if (firstNode.vertex.arbitraryVisit == firstNode) { + EulerTourNode successor = secondNode.successor(); + firstNode.vertex.arbitraryVisit = successor; + augmentAncestorFlags(firstNode); + augmentAncestorFlags(successor); + } + + EulerTourNode root = firstNode.root(); + EulerTourNode[] firstSplitRoots = root.split(firstNode); + EulerTourNode before = firstSplitRoots[0]; + EulerTourNode[] secondSplitRoots = firstSplitRoots[1].split(secondNode.successor()); + before.concatenate(secondSplitRoots[1]); + firstNode.removeWithoutGettingRoot(); + } + /** * Adds the specified edge to the edge map for srcInfo (srcInfo.edges). Assumes that the edge is not currently in * the map. @@ -794,31 +821,8 @@ public class ConnGraph { augmentAncestorFlags(edge.vertex2.arbitraryVisit); if (edge.eulerTourEdge != null) { - // Remove the edge from all of the Euler tour trees that contain it for (EulerTourEdge levelEdge = edge.eulerTourEdge; levelEdge != null; levelEdge = levelEdge.higherEdge) { - EulerTourNode firstNode; - EulerTourNode secondNode; - if (levelEdge.visit1.compareTo(levelEdge.visit2) < 0) { - firstNode = levelEdge.visit1; - secondNode = levelEdge.visit2; - } else { - firstNode = levelEdge.visit2; - secondNode = levelEdge.visit1; - } - - if (firstNode.vertex.arbitraryVisit == firstNode) { - EulerTourNode successor = secondNode.successor(); - firstNode.vertex.arbitraryVisit = successor; - augmentAncestorFlags(firstNode); - augmentAncestorFlags(successor); - } - - EulerTourNode root = firstNode.root(); - EulerTourNode[] firstSplitRoots = root.split(firstNode); - EulerTourNode before = firstSplitRoots[0]; - EulerTourNode[] secondSplitRoots = firstSplitRoots[1].split(secondNode.successor()); - before.concatenate(secondSplitRoots[1]); - firstNode.removeWithoutGettingRoot(); + removeForestEdge(levelEdge); } edge.eulerTourEdge = null; @@ -1044,18 +1048,10 @@ public class ConnGraph { } /** - * Attempts to optimize the internal representation of the graph so that future updates will take less time. This - * method does not affect how long queries such as "connected" will take. You may find it beneficial to call - * optimize() when there is some downtime. Note that this method generally increases the amount of space the - * ConnGraph uses, but not beyond the bound of O(V log V + E). + * Pushes all forest edges as far down as possible, so that any further pushes would violate the constraint on the + * size of connected components. The current implementation of this method takes O(V log^2 V) time. */ - public void optimize() { - // The current implementation of optimize() takes O(V log^2 V + E log V log log V) time - - rebuild(); - - // Greedily push each forest edge as far down as possible - to the lowest level where the constraint on the - // size of connected components isn't violated + private void optimizeForestEdges() { for (VertexInfo info : vertexInfo.values()) { int level = maxLogVertexCountSinceRebuild; EulerTourVertex vertex; @@ -1121,8 +1117,13 @@ public class ConnGraph { level++; } } + } - // Push each non-forest edge down to the lowest level where the endpoints are in the same connected component + /** + * Pushes each non-forest edge down to the lowest level where the endpoints are in the same connected component. The + * current implementation of this method takes O(V log V + E log V log log V) time. + */ + private void optimizeGraphEdges() { for (VertexInfo info : vertexInfo.values()) { EulerTourVertex vertex; for (vertex = info.vertex; vertex.lowerVertex != null; vertex = vertex.lowerVertex); @@ -1185,4 +1186,17 @@ public class ConnGraph { } } } + + /** + * Attempts to optimize the internal representation of the graph so that future updates will take less time. This + * method does not affect how long queries such as "connected" will take. You may find it beneficial to call + * optimize() when there is some downtime. Note that this method generally increases the amount of space the + * ConnGraph uses, but not beyond the bound of O(V log V + E). + */ + public void optimize() { + // The current implementation of optimize() takes O(V log^2 V + E log V log log V) time + rebuild(); + optimizeForestEdges(); + optimizeGraphEdges(); + } } diff --git a/target/dynamic-connectivity-0.1.1-jar-with-dependencies.jar b/target/dynamic-connectivity-0.1.1-jar-with-dependencies.jar deleted file mode 100644 index 9a757a0386524358af8dc6c47543f13f8bdc9a26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36024 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 diff --git a/target/dynamic-connectivity-0.1.1.jar b/target/dynamic-connectivity-0.1.1.jar deleted file mode 100644 index fed9bc68fee9b8ab157321333c948734b3932b1a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16831 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 hz%L(-o`1u~?@t8MVqoAuA+XIPahT{ePQRI*0%O literal 0 HcmV?d00001 diff --git a/target/dynamic-connectivity-0.1.2.jar b/target/dynamic-connectivity-0.1.2.jar new file mode 100644 index 0000000000000000000000000000000000000000..c82ff9e749bbe93e4343bd6519299a411f20b9c5 GIT binary patch literal 16934 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