Class BHeap<T>
A binary heap implementation.
Assembly: Advanced.Algorithms.dll
Syntax
public class BHeap<T> : IEnumerable<T> where T : IComparable
Type Parameters
Constructors
BHeap(SortDirection)
Declaration
public BHeap(SortDirection sortDirection = null)
Parameters
Type |
Name |
Description |
SortDirection |
sortDirection |
|
BHeap(SortDirection, IComparer<T>)
Declaration
public BHeap(SortDirection sortDirection, IComparer<T> comparer)
Parameters
Type |
Name |
Description |
SortDirection |
sortDirection |
|
IComparer<T> |
comparer |
|
BHeap(SortDirection, IEnumerable<T>)
Declaration
public BHeap(SortDirection sortDirection, IEnumerable<T> initial)
Parameters
Type |
Name |
Description |
SortDirection |
sortDirection |
|
IEnumerable<T> |
initial |
|
BHeap(SortDirection, IEnumerable<T>, IComparer<T>)
Time complexity: O(n) if initial is provided. Otherwise O(1).
Declaration
public BHeap(SortDirection sortDirection, IEnumerable<T> initial, IComparer<T> comparer)
Parameters
Type |
Name |
Description |
SortDirection |
sortDirection |
|
IEnumerable<T> |
initial |
The initial items in the heap.
|
IComparer<T> |
comparer |
|
Properties
Count
Declaration
public int Count { get; }
Property Value
Methods
Delete(T)
Declaration
public void Delete(T value)
Parameters
Type |
Name |
Description |
T |
value |
|
Exists(T)
Declaration
public bool Exists(T value)
Parameters
Type |
Name |
Description |
T |
value |
|
Returns
Time complexity: O(log(n)).
Declaration
Returns
GetEnumerator()
Declaration
public IEnumerator<T> GetEnumerator()
Returns
Type |
Description |
IEnumerator<T> |
|
Insert(T)
Time complexity: O(log(n)).
Declaration
public void Insert(T newItem)
Parameters
Type |
Name |
Description |
T |
newItem |
|
Peek()
Declaration
Returns