Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## edu.emory.mathcs.util.collections.shorts
Interface ShortSortedSet

All Superinterfaces:
  ShortCollection, ShortSet

All Known Subinterfaces:
  ShortInterval

All Known Implementing Classes:
  AbstractShortInterval, AbstractShortSortedSet

public interface ShortSortedSet
extends ShortSet

Sorted set is a collection with no duplicate elements. Primitive sets have some features not found in object sets. A primitive set is associated with a domain with boundaries defined by `ShortSet.min()` and `ShortSet.max()`. All numbers contained within this set must fit between min and max, inclusive. Attempt to add a number from outside the domain will have no effect.

It is possible to obtain a complement view of a primitive set, using `ShortSet.complementSet()`. The complement view contains all numbers between min and max, inclusive, which are not contained in this set. (In other words, complement view never contains numbers from outside of the domain of this set).

Contrary to standard Java collections, intervals in this primitive collection package are inclusive on both sides. In other words, interval [min, max] contains all numbers c such that min <= c <= max. (Otherwise, MAX_VALUE could not be put in the set).

It is possible to obtain a subset view of a sorted set, using one of the methods `#subSet()`, `#headSet()`, and `#tailSet()`. The subset view narrows the domain, and its size is thus never bigger than that of this set.

Sorted sets define a family of navigation methods, analogous to that found in `NavigableSet`.

Version:
  1.0
Author:
  Dawid Kurzyniec

Method Summary
`short` | `ceiling(short e)` Returns the smallest number in this set >= e.
`ShortInterval` | `ceilingInterval(short e)` Returns the smallest (left-most), widest interval contained in this set which elements are not all smaller than the specified number.
`java.util.Iterator` | `descendingIntervalIterator()` Returns an iterator over intervals of this set, in a decreasing numerical order.
`ShortIterator` | `descendingIterator()` Returns an iterator over numbers in this set, in a decreasing numerical order.
`ShortInterval` | `enclosingInterval(short e)` Returns the widest interval contained in this set that includes the specified number, or null if this set does not include the specified number.
`short` | `first()` Returns the smallest number in this set.
`ShortInterval` | `firstInterval()` Returns the first (left-most), widest interval contained in this set, or null if this set is empty.
`short` | `floor(short e)` Returns the largest number in this set <= e.
`ShortInterval` | `floorInterval(short e)` Returns the largest (right-most), widest interval contained in this set which elements are not all greater than the specified number.
`ShortSortedSet` | `headSet(short last)` A subset view containing all elements from this set that are not greater than last.
`short` | `higher(short e)` Returns the smallest number in this set > e.
`ShortInterval` | `higherInterval(short e)` Returns the smallest (left-most), widest interval contained in this set which all elements are strictly greater than the specified number.
`int` | `intervalCount()` Returns the minimum count of intervals into which this set can be decomposed.
`java.util.Iterator` | `intervalIterator()` Returns an iterator over intervals of this set, in an increasing numerical order.
`ShortIterator` | `iterator()` Returns an iterator over numbers in this set, in an increasing numerical order.
`short` | `last()` Returns the largest number in this set.
`ShortInterval` | `lastInterval()` Returns the last (right-most), widest interval contained in this set, or null if this set is empty.
`short` | `lower(short e)` Returns the largest number in this set < e.
`ShortInterval` | `lowerInterval(short e)` Returns the largest and widest interval contained in this set which all elements are strictly less than the specified number.
`short` | `pollFirst()` Returns and removes the smallest number in this set.
`ShortInterval` | `pollFirstInterval()` Returns and removes the first (left-most), widest interval contained in this set, or null if this set is empty.
`short` | `pollLast()` Returns and removes the largest number in this set.
`ShortInterval` | `pollLastInterval()` Returns and removes the last (right-most), widest interval contained in this set, or null if this set is empty.
`ShortSortedSet` | `subSet(short first, short last)` A subset view containing all elements from this set between first, inclusive, and last, inclusive.
`ShortSortedSet` | `tailSet(short first)` A subset view containing all elements from this set that are not smaller than first.
`java.lang.String` | `toCompactString()` Returns the interval-string representation of this set (suitable for representing sets that are possibly large but clustered).
`java.lang.String` | `toString()`

Methods inherited from interface edu.emory.mathcs.util.collections.shorts.ShortSet
`add, addAll, addInterval, clear, complementSet, contains, containsAll, containsInterval, equals, hashCode, isEmpty, max, min, remove, removeAll, removeInterval, retainAll, retainInterval, size, toArray, toArray`

Method Detail

### subSet

    public ShortSortedSet subSet(short first,
                                 short last)

  A subset view containing all elements from this set between first, inclusive, and last, inclusive. More precisely, the view is narrowed to the domain [min, max]. Hence, complement set of this set will NOT include any elements outside [min, max].

  Parameters:
    `first` - the minimum element of this view (inclusive).
    `last` - the maximum element of this view (inclusive).
  Returns:
    the subset view

### headSet

    public ShortSortedSet headSet(short last)

  A subset view containing all elements from this set that are not greater than last. More precisely, the view is narrowed to the domain [MIN_VALUE, max]. Hence, complement set of this set will NOT include any elements > max.

  Parameters:
    `last` - the maximum element of this view (inclusive).
  Returns:
    the headset view

### tailSet

    public ShortSortedSet tailSet(short first)

  A subset view containing all elements from this set that are not smaller than first. More precisely, the view is narrowed to the domain [min, MAX_VALUE]. Hence, complement set of this set will NOT include any elements < min.

  Parameters:
    `first` - the minimum element of this view (inclusive).
  Returns:
    the tailset view

### first

    public short first()

  Returns the smallest number in this set.

  Returns:
    the smallest number in this set.
  Throws:
    `java.util.NoSuchElementException` - if the set is empty.

### last

    public short last()

  Returns the largest number in this set.

  Returns:
    the largest number in this set.
  Throws:
    `java.util.NoSuchElementException` - if the set is empty.

### ceiling

    public short ceiling(short e)

  Returns the smallest number in this set >= e.

  Returns:
    the smallest number in this set >= e.
  Throws:
    `java.util.NoSuchElementException` - if all elements are < e.

### higher

    public short higher(short e)

  Returns the smallest number in this set > e.

  Returns:
    the smallest number in this set > e.
  Throws:
    `java.util.NoSuchElementException` - if all elements are <= e.

### floor

    public short floor(short e)

  Returns the largest number in this set <= e.

  Returns:
    the largest number in this set <= e.
  Throws:
    `java.util.NoSuchElementException` - if all elements are > e.

### lower

    public short lower(short e)

  Returns the largest number in this set < e.

  Returns:
    the largest number in this set < e.
  Throws:
    `java.util.NoSuchElementException` - if all elements are >= e.

### pollFirst

    public short pollFirst()

  Returns and removes the smallest number in this set.

  Returns:
    the smallest number in this set.
  Throws:
    `java.util.NoSuchElementException` - if the set is empty.

### pollLast

    public short pollLast()

  Returns and removes the largest number in this set.

  Returns:
    the smallest number in this set.
  Throws:
    `java.util.NoSuchElementException` - if the set is empty.

### intervalCount

    public int intervalCount()

  Returns the minimum count of intervals into which this set can be decomposed. For instance, {1, 3,4,5, 8,9}.intervalCount() == 3.

  Returns:
    int the interval count of this set.

### intervalIterator

    public java.util.Iterator intervalIterator()

  Returns an iterator over intervals of this set, in an increasing numerical order.

  Returns:
    an iterator over intervals of this set

### descendingIntervalIterator

    public java.util.Iterator descendingIntervalIterator()

  Returns an iterator over intervals of this set, in a decreasing numerical order.

  Returns:
    a descending iterator over intervals of this set

### iterator

    public ShortIterator iterator()

  Returns an iterator over numbers in this set, in an increasing numerical order.

  Specified by:
    `iterator` in interface `ShortSet`
  Returns:
    an iterator over numbers in this set

### descendingIterator

    public ShortIterator descendingIterator()

  Returns an iterator over numbers in this set, in a decreasing numerical order.

  Returns:
    a descending iterator over numbers in this set

### firstInterval

    public ShortInterval firstInterval()

  Returns the first (left-most), widest interval contained in this set, or null if this set is empty.

  Returns:
    the first interval contained in this set

### lastInterval

    public ShortInterval lastInterval()

  Returns the last (right-most), widest interval contained in this set, or null if this set is empty.

  Returns:
    the last interval contained in this set

### enclosingInterval

    public ShortInterval enclosingInterval(short e)

  Returns the widest interval contained in this set that includes the specified number, or null if this set does not include the specified number.

  Returns:
    the interval containing the specified number.

### lowerInterval

    public ShortInterval lowerInterval(short e)

  Returns the largest and widest interval contained in this set which all elements are strictly less than the specified number.

  Returns:
    the largest interval smaller than the specified number.

### higherInterval

    public ShortInterval higherInterval(short e)

  Returns the smallest (left-most), widest interval contained in this set which all elements are strictly greater than the specified number.

  Returns:
    the smallest interval greater than the specified number.

### floorInterval

    public ShortInterval floorInterval(short e)

  Returns the largest (right-most), widest interval contained in this set which elements are not all greater than the specified number. In other words, it either includes the specified number or has all elements strictly less than the specified number.

  Returns:
    the largest interval which lower bound is <= than the specified number.

### ceilingInterval

    public ShortInterval ceilingInterval(short e)

  Returns the smallest (left-most), widest interval contained in this set which elements are not all smaller than the specified number. In other words, it either includes the specified number or has all elements strictly greater than the specified number.

  Returns:
    the smallest interval which upper bound is >= than the specified number.

### pollFirstInterval

    public ShortInterval pollFirstInterval()

  Returns and removes the first (left-most), widest interval contained in this set, or null if this set is empty.

  Returns:
    the first interval contained in this set

### pollLastInterval

    public ShortInterval pollLastInterval()

  Returns and removes the last (right-most), widest interval contained in this set, or null if this set is empty.

  Returns:
    the last interval contained in this set

### toString

    public java.lang.String toString()

### toCompactString

    public java.lang.String toCompactString()

  Returns the interval-string representation of this set (suitable for representing sets that are possibly large but clustered).

  Returns:
    String

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD