Class SortedDisjointIntervalList

java.lang.Object
com.google.ortools.util.SortedDisjointIntervalList

public class SortedDisjointIntervalList extends Object
This class represents a sorted list of disjoint, closed intervals. When an
interval is inserted, all intervals that overlap it or are adjacent to it are
merged into one. I.e. [0,14] and [15,30] will be merged to [0,30].

Iterators returned by this class are invalidated by non-const operations.
  • Field Details

    • swigCMemOwn

      protected transient boolean swigCMemOwn
  • Constructor Details

    • SortedDisjointIntervalList

      public SortedDisjointIntervalList(long cPtr, boolean cMemoryOwn)
    • SortedDisjointIntervalList

      public SortedDisjointIntervalList()
    • SortedDisjointIntervalList

      public SortedDisjointIntervalList(long[] starts, long[] ends)
      Creates a SortedDisjointIntervalList and fills it with intervals
      [starts[i]..ends[i]]. All intervals must be consistent (starts[i] <=
      ends[i]). There are two version, one for int64_t and one for int.
    • SortedDisjointIntervalList

      public SortedDisjointIntervalList(int[] starts, int[] ends)
  • Method Details

    • getCPtr

      public static long getCPtr(SortedDisjointIntervalList obj)
    • swigRelease

      public static long swigRelease(SortedDisjointIntervalList obj)
    • finalize

      protected void finalize()
      Overrides:
      finalize in class Object
    • delete

      public void delete()
    • buildComplementOnInterval

      public SortedDisjointIntervalList buildComplementOnInterval(long start, long end)
      Builds the complement of the interval list on the interval [start, end].
    • insertIntervals

      public void insertIntervals(long[] starts, long[] ends)
      Adds all intervals [starts[i]..ends[i]].

      Same behavior as InsertInterval() upon invalid intervals. There's a version
      with int64_t and int32_t.
    • insertIntervals

      public void insertIntervals(int[] starts, int[] ends)
    • numIntervals

      public int numIntervals()
      Returns the number of disjoint intervals in the list.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • insertInterval

      public void insertInterval(long start, long end)