Module org.hsqldb

Class HsqlArrayHeap<E>

  • All Implemented Interfaces:
    HsqlHeap<E>

    public class HsqlArrayHeap<E>
    extends java.lang.Object
    implements HsqlHeap<E>
    An HsqlHeap implementation backed by an array of objects and an ObjectComparator. This implementation is non-blocking, dynamically resizing and thread-safe.
    Since:
    1.7.2
    Author:
    Campbell Burnet (campbell-burnet@users dot sourceforge.net)
    • Constructor Summary

      Constructors 
      Constructor Description
      HsqlArrayHeap​(int capacity, java.util.Comparator<E> comparator)
      Creates a new HsqlArrayHeap with the given initial capacity, using the specified ObjectComparator to maintain the heap invariant.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean add​(E o)
      Adds the specified element to this Heap.
      void clear()
      Removes all of the elements from this Heap.
      boolean isEmpty()
      Retrieves whether this Heap is empty.
      boolean isFull()
      Retrieves whether this Heap is full.
      E peek()
      Retrieves the least element from this Heap, without removing it.
      E remove()
      Retrieves the least element from this Heap, removing it in the process.
      int size()
      Retrieves the number of elements currently in this Heap.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • HsqlArrayHeap

        public HsqlArrayHeap​(int capacity,
                             java.util.Comparator<E> comparator)
                      throws java.lang.IllegalArgumentException
        Creates a new HsqlArrayHeap with the given initial capacity, using the specified ObjectComparator to maintain the heap invariant.
        Parameters:
        capacity - int
        comparator - Comparator
        Throws:
        java.lang.IllegalArgumentException - if capacity less or equal to zero or comparator is null
    • Method Detail

      • clear

        public void clear()
        Description copied from interface: HsqlHeap
        Removes all of the elements from this Heap.
        Specified by:
        clear in interface HsqlHeap<E>
      • add

        public boolean add​(E o)
        Description copied from interface: HsqlHeap
        Adds the specified element to this Heap.
        Specified by:
        add in interface HsqlHeap<E>
        Parameters:
        o - The element to add
        Returns:
        boolean
      • isEmpty

        public boolean isEmpty()
        Description copied from interface: HsqlHeap
        Retrieves whether this Heap is empty.
        Specified by:
        isEmpty in interface HsqlHeap<E>
        Returns:
        boolean
      • isFull

        public boolean isFull()
        Description copied from interface: HsqlHeap
        Retrieves whether this Heap is full.
        Specified by:
        isFull in interface HsqlHeap<E>
        Returns:
        boolean
      • peek

        public E peek()
        Description copied from interface: HsqlHeap
        Retrieves the least element from this Heap, without removing it.
        Specified by:
        peek in interface HsqlHeap<E>
        Returns:
        the least element from this Heap
      • remove

        public E remove()
        Description copied from interface: HsqlHeap
        Retrieves the least element from this Heap, removing it in the process.
        Specified by:
        remove in interface HsqlHeap<E>
        Returns:
        the least element from this Heap
      • size

        public int size()
        Description copied from interface: HsqlHeap
        Retrieves the number of elements currently in this Heap.
        Specified by:
        size in interface HsqlHeap<E>
        Returns:
        the number of elements currently in this Heap
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object