Show / Hide Table of Contents

    Class PairingHeap<T>

    A pairing minMax heap implementation.

    Inheritance
    Object
    PairingHeap<T>
    Namespace: Advanced.Algorithms.DataStructures
    Assembly: Advanced.Algorithms.dll
    Syntax
    public class PairingHeap<T> : IEnumerable<T> where T : IComparable
    Type Parameters
    Name Description
    T

    Constructors

    PairingHeap(SortDirection)

    Declaration
    public PairingHeap(SortDirection sortDirection = null)
    Parameters
    Type Name Description
    SortDirection sortDirection

    Properties

    Count

    Declaration
    public int Count { get; }
    Property Value
    Type Description
    Int32

    Methods

    Extract()

    Time complexity: O(log(n)).

    Declaration
    public T Extract()
    Returns
    Type Description
    T

    GetEnumerator()

    Declaration
    public IEnumerator<T> GetEnumerator()
    Returns
    Type Description
    IEnumerator<T>

    Insert(T)

    Insert a new Node. Time complexity: O(1).

    Declaration
    public void Insert(T newItem)
    Parameters
    Type Name Description
    T newItem

    Merge(PairingHeap<T>)

    Merge another heap with this heap. Time complexity: O(1).

    Declaration
    public void Merge(PairingHeap<T> PairingHeap)
    Parameters
    Type Name Description
    PairingHeap<T> PairingHeap

    Peek()

    Time complexity: O(1).

    Declaration
    public T Peek()
    Returns
    Type Description
    T

    UpdateKey(T, T)

    Time complexity: O(log(n)).

    Declaration
    public void UpdateKey(T currentValue, T newValue)
    Parameters
    Type Name Description
    T currentValue
    T newValue
    Back to top Generated by DocFX