Package edu.jas.util

Class KsubSetIterator<E>

java.lang.Object
edu.jas.util.KsubSetIterator<E>
All Implemented Interfaces:
Iterator<List<E>>

class KsubSetIterator<E> extends Object implements Iterator<List<E>>
Power set iterator.
  • Field Details

    • set

      public final List<E> set
      data structure.
    • k

      public final int k
    • rest

      final List<E> rest
    • current

      private E current
    • recIter

      private Iterator<List<E>> recIter
    • iter

      private final Iterator<E> iter
  • Constructor Details

    • KsubSetIterator

      public KsubSetIterator(List<E> set, int k)
      KsubSetIterator constructor.
      Parameters:
      set - generating set.
      k - subset size.
  • Method Details

    • hasNext

      public boolean hasNext()
      Test for availability of a next subset.
      Specified by:
      hasNext in interface Iterator<E>
      Returns:
      true if the iteration has more subsets, else false.
    • next

      public List<E> next()
      Get next subset.
      Specified by:
      next in interface Iterator<E>
      Returns:
      next subset.
    • remove

      public void remove()
      Remove the last subset returned from underlying set if allowed.
      Specified by:
      remove in interface Iterator<E>