Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 447463e

Browse files
committed
simplify DistanceCalculatorInRootedTree by forcing use specific implementation (SegmentTreeByArrayImplementation)
1 parent b18c464 commit 447463e

File tree

2 files changed

+4
-7
lines changed

2 files changed

+4
-7
lines changed

src/main/java/org/psjava/algo/graph/DistanceCalculatorInRootedTree.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
import org.psjava.ds.numbersystrem.AddInvert;
1111
import org.psjava.ds.numbersystrem.AddableNumberSystem;
1212
import org.psjava.ds.tree.segmenttree.SegmentTree;
13-
import org.psjava.ds.tree.segmenttree.SegmentTreeFactory;
13+
import org.psjava.ds.tree.segmenttree.SegmentTreeByArrayImplementation;
1414
import org.psjava.util.VisitorStopper;
1515

1616
import java.util.function.Function;
@@ -19,12 +19,10 @@
1919
public class DistanceCalculatorInRootedTree {
2020

2121
private final LowestCommonAncestorAlgorithm lca;
22-
private final SegmentTreeFactory segmentTreeFactory;
2322
private final MutableMapFactory mapFactory;
2423

25-
public DistanceCalculatorInRootedTree(LowestCommonAncestorAlgorithm lca, SegmentTreeFactory segmentTreeFactory, MutableMapFactory mapFactory) {
24+
public DistanceCalculatorInRootedTree(LowestCommonAncestorAlgorithm lca, MutableMapFactory mapFactory) {
2625
this.lca = lca;
27-
this.segmentTreeFactory = segmentTreeFactory;
2826
this.mapFactory = mapFactory;
2927
}
3028

@@ -57,7 +55,7 @@ public void onWalkUp(E edge) {
5755
}
5856
});
5957

60-
final SegmentTree<W> segmentTree = segmentTreeFactory.create(pathWeights, ns::add);
58+
final SegmentTree<W> segmentTree = new SegmentTreeByArrayImplementation<>(pathWeights, ns::add);
6159
final LowestCommonAncestorQuerySession<V> lcaSession = lca.calc(tree);
6260

6361
return new DistanceCalculatorInRootedTreeResult<V, W>() {

src/test/java/org/psjava/algo/graph/DistanceCalculatorInRootedTreeTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,12 @@
77
import org.psjava.ds.numbersystrem.IntegerNumberSystem;
88
import org.psjava.goods.GoodLowestCommonAncestorAlgorithm;
99
import org.psjava.goods.GoodMutableMapFactory;
10-
import org.psjava.goods.GoodSegmentTreeFactory;
1110

1211
import static org.junit.Assert.assertEquals;
1312

1413
public class DistanceCalculatorInRootedTreeTest {
1514

16-
private static final DistanceCalculatorInRootedTree INSTANCE = new DistanceCalculatorInRootedTree(GoodLowestCommonAncestorAlgorithm.getInstrance(), GoodSegmentTreeFactory.getInstance(), GoodMutableMapFactory.getInstance());
15+
private static final DistanceCalculatorInRootedTree INSTANCE = new DistanceCalculatorInRootedTree(GoodLowestCommonAncestorAlgorithm.getInstrance(), GoodMutableMapFactory.getInstance());
1716

1817
@Test
1918
public void testCalc() {

0 commit comments

Comments
 (0)