Class/Object

firrtl.graph

EulerTour

Related Docs: object EulerTour | package graph

Permalink

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])

    Permalink

    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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  9. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  10. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  11. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  12. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  13. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  14. def rmq(x: T, y: T): T

    Permalink

    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

    The order of x and y does not matter

    ,

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

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

    Permalink

    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

    Performance:

    • preprocessing: O(n)
    • query: O(1)
    ,

    The order of x and y does not matter

  16. def rmqNaive(x: T, y: T): T

    Permalink

    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

    Performance:

    • preprocessing: O(1)
    • query: O(n)
    ,

    The order of x and y does not matter

  17. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  18. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  19. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from AnyRef

Inherited from Any

Ungrouped