Packages

class EulerTour[T] extends AnyRef

A class that represents an Euler Tour of a directed graph from a given root. This requires O(n) preprocessing time to generate the initial Euler Tour.

Source
EulerTour.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. EulerTour
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new EulerTour(r: Map[T, Int], e: Seq[T], h: Seq[Int])

    Create a new EulerTour from the specified data

    Create a new EulerTour from the specified data

    r

    A map of a node to its first index

    e

    A representation of the EulerTour as a Seq[T]

    h

    The depths of the Euler Tour represented as a Seq[Int]

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  9. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  13. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  14. def rmq(x: T, y: T): T

    Range Minimum Query of the Euler Tour.

    Range Minimum Query of the Euler Tour.

    Use this for typical queries.

    x

    The first query bound

    y

    The second query bound

    returns

    The minimum between the first and second query

    Note

    This currently maps to rmqBV, but may choose to map to either rmqBV or rmqNaive

    ,

    The order of x and y does not matter

  15. def rmqBV(x: T, y: T): T

    Range Minimum Query using the Berkman--Vishkin algorithm with the simplifications of Bender--Farach-Colton.

    Range Minimum Query using the Berkman--Vishkin algorithm with the simplifications of Bender--Farach-Colton.

    x

    The first query bound

    y

    The second query bound

    returns

    The minimum between the first and second query

    Note

    The order of x and y does not matter

    ,

    Performance:

    • preprocessing: O(n)
    • query: O(1)
  16. def rmqNaive(x: T, y: T): T

    Range Minimum Query of an Euler Tour using a naive algorithm.

    Range Minimum Query of an Euler Tour using a naive algorithm.

    x

    The first query bound

    y

    The second query bound

    returns

    The minimum between the first and second query

    Note

    The order of x and y does not matter

    ,

    Performance:

    • preprocessing: O(1)
    • query: O(n)
  17. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  18. def toString(): String
    Definition Classes
    AnyRef → Any
  19. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  21. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from AnyRef

Inherited from Any

Ungrouped