# Class MaxHeap<V>

#### Type Parameters

- #### V = any

#### Hierarchy

- Heap<V>
  - MaxHeap

- Defined in src/data-structures/heap/max-heap.ts:17

#####
Index

### Constructors

constructor

### Properties

_pq
_priorityExtractor

### Accessors

pq
priorityExtractor
size

### Methods

add
clear
has
isEmpty
peek
peekLast
poll
sort
toArray

## Constructors

### constructor

- new MaxHeap<V>(options?): MaxHeap<V>

- The constructor initializes a PriorityQueue with a custom comparator function.

  #### Type Parameters

  - #### V = any

  #### Parameters

  - ##### `Optional` options: HeapOptions<V>

    The `options` parameter is an optional object that can be passed to the constructor. It is of type `HeapOptions<V>`, which is a generic type that represents the options for the heap.

  #### Returns MaxHeap<V>

  Overrides Heap.constructor

  - Defined in src/data-structures/heap/max-heap.ts:25

## Properties

### `Protected` _pq

_pq: PriorityQueue<HeapItem<V>>

Overrides Heap._pq

- Defined in src/data-structures/heap/max-heap.ts:18

### `Protected` _priorityExtractor

_priorityExtractor: ((val) => number)

#### Type declaration

- - (val): number

  - #### Parameters

    - ##### val: V

    #### Returns number

Inherited from Heap._priorityExtractor

- Defined in src/data-structures/heap/heap.ts:69

## Accessors

### pq

- get pq(): PriorityQueue<HeapItem<V>>

- #### Returns PriorityQueue<HeapItem<V>>

  Inherited from Heap.pq

  - Defined in src/data-structures/heap/heap.ts:65

### priorityExtractor

- get priorityExtractor(): ((val) => number)

- #### Returns ((val) => number)

  - - (val): number

    - #### Parameters

      - ##### val: V

      #### Returns number

  Inherited from Heap.priorityExtractor

  - Defined in src/data-structures/heap/heap.ts:70

### size

- get size(): number

- The function returns the size of a priority queue.

  #### Returns number

  The size of the priority queue.

  Inherited from Heap.size

  - Defined in src/data-structures/heap/heap.ts:78

## Methods

### add

- add(priority?, val?): Heap<V>

- The `add` function adds an val to a priority queue with an optional priority value.

  #### Parameters

  - ##### `Optional` priority: number

    The `priority` parameter is an optional number that represents the priority of the val being added to the heap. If the `val` parameter is a number, then the `priority` parameter is set to the value of `val`. If the `val` parameter is not a number, then the

  - ##### `Optional` val: V

    The `val` parameter represents the value that you want to add to the heap. It can be of any type.

  #### Returns Heap<V>

  The `add` method returns the instance of the `Heap` class.

  #### Throws

  if priority is not a valid number

  Inherited from Heap.add

  - Defined in src/data-structures/heap/heap.ts:130

### clear

- clear(): void

- The clear function clears the priority queue.

  #### Returns void

  Inherited from Heap.clear

  - Defined in src/data-structures/heap/heap.ts:209

### has

- has(node): boolean

- The function checks if a given node or value exists in the priority queue.

  #### Parameters

  - ##### node: V | HeapItem<V>

    The parameter `node` can be of type `V` or `HeapItem<V>`.

  #### Returns boolean

  a boolean value.

  Inherited from Heap.has

  - Defined in src/data-structures/heap/heap.ts:160

### isEmpty

- isEmpty(): boolean

- The function checks if a priority queue is empty.

  #### Returns boolean

  A boolean value indicating whether the size of the priority queue is less than 1.

  Inherited from Heap.isEmpty

  - Defined in src/data-structures/heap/heap.ts:86

### peek

- peek(isItem?): undefined | V

- The `peek` function returns the top item in the priority queue without removing it.

  #### Parameters

  - ##### `Optional` isItem: undefined

  #### Returns undefined | V

  The `peek()` method is returning either a `HeapItem<V>` object or `null`.Returns an val with the highest priority in the queue

  Inherited from Heap.peek

  - Defined in src/data-structures/heap/heap.ts:90
- peek(isItem): undefined | V

- The `peek` function returns the top item in the priority queue without removing it.

  #### Parameters

  - ##### isItem: false

  #### Returns undefined | V

  The `peek()` method is returning either a `HeapItem<V>` object or `null`.Returns an val with the highest priority in the queue

  Inherited from Heap.peek

  - Defined in src/data-structures/heap/heap.ts:91
- peek(isItem): null | HeapItem<V>

- The `peek` function returns the top item in the priority queue without removing it.

  #### Parameters

  - ##### isItem: true

  #### Returns null | HeapItem<V>

  The `peek()` method is returning either a `HeapItem<V>` object or `null`.Returns an val with the highest priority in the queue

  Inherited from Heap.peek

  - Defined in src/data-structures/heap/heap.ts:92

### peekLast

- peekLast(isItem?): undefined | V

- The `peekLast` function returns the last item in the heap.

  #### Parameters

  - ##### `Optional` isItem: undefined

  #### Returns undefined | V

  The method `peekLast()` returns either a `HeapItem<V>` object or `null`.Returns an val with the lowest priority in the queue

  Inherited from Heap.peekLast

  - Defined in src/data-structures/heap/heap.ts:105
- peekLast(isItem): undefined | V

- The `peekLast` function returns the last item in the heap.

  #### Parameters

  - ##### isItem: false

  #### Returns undefined | V

  The method `peekLast()` returns either a `HeapItem<V>` object or `null`.Returns an val with the lowest priority in the queue

  Inherited from Heap.peekLast

  - Defined in src/data-structures/heap/heap.ts:106
- peekLast(isItem): null | HeapItem<V>

- The `peekLast` function returns the last item in the heap.

  #### Parameters

  - ##### isItem: true

  #### Returns null | HeapItem<V>

  The method `peekLast()` returns either a `HeapItem<V>` object or `null`.Returns an val with the lowest priority in the queue

  Inherited from Heap.peekLast

  - Defined in src/data-structures/heap/heap.ts:107

### poll

- poll(isItem?): undefined | V

- The `poll` function returns the top item from a priority queue or null if the queue is empty.Removes and returns an val with the highest priority in the queue

  #### Parameters

  - ##### `Optional` isItem: undefined

  #### Returns undefined | V

  either a HeapItem object or null.

  Inherited from Heap.poll

  - Defined in src/data-structures/heap/heap.ts:137
- poll(isItem): undefined | V

- The `poll` function returns the top item from a priority queue or null if the queue is empty.Removes and returns an val with the highest priority in the queue

  #### Parameters

  - ##### isItem: false

  #### Returns undefined | V

  either a HeapItem object or null.

  Inherited from Heap.poll

  - Defined in src/data-structures/heap/heap.ts:138
- poll(isItem): null | HeapItem<V>

- The `poll` function returns the top item from a priority queue or null if the queue is empty.Removes and returns an val with the highest priority in the queue

  #### Parameters

  - ##### isItem: true

  #### Returns null | HeapItem<V>

  either a HeapItem object or null.

  Inherited from Heap.poll

  - Defined in src/data-structures/heap/heap.ts:139

### sort

- sort(isItem?): (undefined | V)[]

- The function sorts the elements in the priority queue and returns either the sorted items or their values depending on the value of the isItem parameter.

  #### Parameters

  - ##### `Optional` isItem: undefined

    The `isItem` parameter is a boolean flag that indicates whether the sorted result should be an array of `HeapItem<V>` objects or an array of the values (`V`) of those objects. If `isItem` is `true`, the sorted result will be an array of `HeapItem @returns an array of either` HeapItem`,` null`,` V`, or` undefined` values.

  #### Returns (undefined | V)[]

  Inherited from Heap.sort

  - Defined in src/data-structures/heap/heap.ts:187
- sort(isItem): (undefined | V)[]

- The function sorts the elements in the priority queue and returns either the sorted items or their values depending on the value of the isItem parameter.

  #### Parameters

  - ##### isItem: false

    The `isItem` parameter is a boolean flag that indicates whether the sorted result should be an array of `HeapItem<V>` objects or an array of the values (`V`) of those objects. If `isItem` is `true`, the sorted result will be an array of `HeapItem @returns an array of either` HeapItem`,` null`,` V`, or` undefined` values.

  #### Returns (undefined | V)[]

  Inherited from Heap.sort

  - Defined in src/data-structures/heap/heap.ts:188
- sort(isItem): (null | HeapItem<V>)[]

- The function sorts the elements in the priority queue and returns either the sorted items or their values depending on the value of the isItem parameter.

  #### Parameters

  - ##### isItem: true

    The `isItem` parameter is a boolean flag that indicates whether the sorted result should be an array of `HeapItem<V>` objects or an array of the values (`V`) of those objects. If `isItem` is `true`, the sorted result will be an array of `HeapItem @returns an array of either` HeapItem`,` null`,` V`, or` undefined` values.

  #### Returns (null | HeapItem<V>)[]

  Inherited from Heap.sort

  - Defined in src/data-structures/heap/heap.ts:189

### toArray

- toArray(isItem?): (undefined | V)[]

- The `toArray` function returns an array of `HeapItem<V>` objects.

  #### Parameters

  - ##### `Optional` isItem: undefined

  #### Returns (undefined | V)[]

  An array of HeapItem objects.Returns a sorted list of vals

  Inherited from Heap.toArray

  - Defined in src/data-structures/heap/heap.ts:172
- toArray(isItem): (undefined | V)[]

- The `toArray` function returns an array of `HeapItem<V>` objects.

  #### Parameters

  - ##### isItem: false

  #### Returns (undefined | V)[]

  An array of HeapItem objects.Returns a sorted list of vals

  Inherited from Heap.toArray

  - Defined in src/data-structures/heap/heap.ts:173
- toArray(isItem): (null | HeapItem<V>)[]

- The `toArray` function returns an array of `HeapItem<V>` objects.

  #### Parameters

  - ##### isItem: true

  #### Returns (null | HeapItem<V>)[]

  An array of HeapItem objects.Returns a sorted list of vals

  Inherited from Heap.toArray

  - Defined in src/data-structures/heap/heap.ts:174

Generated using TypeDoc