Class SparseEdmondsMaximumCardinalityMatching.Algorithm<V,​E>

  • Type Parameters:
    V - the vertex type
    E - the edge type
    Enclosing class:
    SparseEdmondsMaximumCardinalityMatching<V,​E>

    private static class SparseEdmondsMaximumCardinalityMatching.Algorithm<V,​E>
    extends java.lang.Object
    The actual implementation as an inner class. We use this pattern in order to free the work memory after computation. The outer class can cache the result but can also release all the auxiliary memory.
    • Method Detail

      • initialize

        private void initialize()
      • runInitializer

        private void runInitializer()
      • findPath

        private void findPath​(java.util.Deque<java.lang.Integer> p,
                              int x,
                              int y)
      • shrinkPath

        private void shrinkPath​(int b,
                                int v,
                                int w)
      • computeMatching

        public java.util.Set<E> computeMatching()
      • computeOddSetCover

        public java.util.Map<V,​java.lang.Integer> computeOddSetCover()