Documentation
¶
Index ¶
- type AscendingPriorityQueue
- type BinarySearchTreePriorityQueue
- func (queue *BinarySearchTreePriorityQueue[T]) DeleteMax() T
- func (queue *BinarySearchTreePriorityQueue[T]) DeleteMin() T
- func (queue BinarySearchTreePriorityQueue[T]) GetMax() T
- func (queue BinarySearchTreePriorityQueue[T]) GetMin() T
- func (queue *BinarySearchTreePriorityQueue[T]) Insert(data T)
- func (queue BinarySearchTreePriorityQueue[T]) Length() int
- type DescendingPriorityQueue
- type DoubleEndedPriorityQueue
- type HeapAscendingPriorityQueue
- type HeapDescendingPriorityQueue
- type LinkedListPriorityQueue
- func (queue *LinkedListPriorityQueue[T]) DeleteMax() T
- func (queue *LinkedListPriorityQueue[T]) DeleteMin() T
- func (queue LinkedListPriorityQueue[T]) GetMax() T
- func (queue LinkedListPriorityQueue[T]) GetMin() T
- func (queue *LinkedListPriorityQueue[T]) Insert(data T)
- func (queue LinkedListPriorityQueue[T]) Length() int
- type PriorityQueue
- type SlicePriorityQueue
- type SortedLinkedListPriorityQueue
- func (queue *SortedLinkedListPriorityQueue[T]) DeleteMax() T
- func (queue *SortedLinkedListPriorityQueue[T]) DeleteMin() T
- func (queue SortedLinkedListPriorityQueue[T]) GetMax() T
- func (queue SortedLinkedListPriorityQueue[T]) GetMin() T
- func (queue *SortedLinkedListPriorityQueue[T]) Insert(data T)
- func (queue SortedLinkedListPriorityQueue[T]) Length() int
- type SortedSlicePriorityQueue
- func (queue *SortedSlicePriorityQueue[T]) DeleteMax() T
- func (queue *SortedSlicePriorityQueue[T]) DeleteMin() T
- func (queue SortedSlicePriorityQueue[T]) GetMax() T
- func (queue SortedSlicePriorityQueue[T]) GetMin() T
- func (queue *SortedSlicePriorityQueue[T]) Insert(data T)
- func (queue SortedSlicePriorityQueue[T]) Length() int
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AscendingPriorityQueue ¶
type AscendingPriorityQueue[T cmp.Ordered] interface { PriorityQueue[T] //Return minimum item without removing it from the queue GetMin() T //Remove and return minimum item DeleteMin() T }
type BinarySearchTreePriorityQueue ¶
type BinarySearchTreePriorityQueue[T cmp.Ordered] struct { tree.BinarySearchTree[T] // contains filtered or unexported fields }
func NewBinarySearchTreePriorityQueue ¶
func NewBinarySearchTreePriorityQueue[T cmp.Ordered]() BinarySearchTreePriorityQueue[T]
func (*BinarySearchTreePriorityQueue[T]) DeleteMax ¶
func (queue *BinarySearchTreePriorityQueue[T]) DeleteMax() T
func (*BinarySearchTreePriorityQueue[T]) DeleteMin ¶
func (queue *BinarySearchTreePriorityQueue[T]) DeleteMin() T
func (BinarySearchTreePriorityQueue[T]) GetMax ¶
func (queue BinarySearchTreePriorityQueue[T]) GetMax() T
func (BinarySearchTreePriorityQueue[T]) GetMin ¶
func (queue BinarySearchTreePriorityQueue[T]) GetMin() T
func (*BinarySearchTreePriorityQueue[T]) Insert ¶
func (queue *BinarySearchTreePriorityQueue[T]) Insert(data T)
func (BinarySearchTreePriorityQueue[T]) Length ¶
func (queue BinarySearchTreePriorityQueue[T]) Length() int
type DescendingPriorityQueue ¶
type DescendingPriorityQueue[T cmp.Ordered] interface { PriorityQueue[T] //Return maximum item without removing it from the queue GetMax() T //Remove and return maximum item DeleteMax() T }
type DoubleEndedPriorityQueue ¶
type DoubleEndedPriorityQueue[T cmp.Ordered] interface { AscendingPriorityQueue[T] DescendingPriorityQueue[T] }
type HeapAscendingPriorityQueue ¶
func NewHeapAscendingPriorityQueue ¶
func NewHeapAscendingPriorityQueue[T cmp.Ordered]() HeapAscendingPriorityQueue[T]
func (*HeapAscendingPriorityQueue[T]) DeleteMin ¶
func (queue *HeapAscendingPriorityQueue[T]) DeleteMin() T
func (HeapAscendingPriorityQueue[T]) GetMin ¶
func (queue HeapAscendingPriorityQueue[T]) GetMin() T
type HeapDescendingPriorityQueue ¶
type HeapDescendingPriorityQueue[T cmp.Ordered] struct { // contains filtered or unexported fields }
func NewHeapDescendingPriorityQueue ¶
func NewHeapDescendingPriorityQueue[T cmp.Ordered]() HeapDescendingPriorityQueue[T]
func (*HeapDescendingPriorityQueue[T]) DeleteMax ¶
func (queue *HeapDescendingPriorityQueue[T]) DeleteMax() T
func (HeapDescendingPriorityQueue[T]) GetMax ¶
func (queue HeapDescendingPriorityQueue[T]) GetMax() T
type LinkedListPriorityQueue ¶
type LinkedListPriorityQueue[T cmp.Ordered] struct { *linkedlist.SinglyLinkedList[T] }
func NewLinkedListPriorityQueue ¶
func NewLinkedListPriorityQueue[T cmp.Ordered]() LinkedListPriorityQueue[T]
func (*LinkedListPriorityQueue[T]) DeleteMax ¶
func (queue *LinkedListPriorityQueue[T]) DeleteMax() T
func (*LinkedListPriorityQueue[T]) DeleteMin ¶
func (queue *LinkedListPriorityQueue[T]) DeleteMin() T
func (LinkedListPriorityQueue[T]) GetMax ¶
func (queue LinkedListPriorityQueue[T]) GetMax() T
func (LinkedListPriorityQueue[T]) GetMin ¶
func (queue LinkedListPriorityQueue[T]) GetMin() T
func (*LinkedListPriorityQueue[T]) Insert ¶
func (queue *LinkedListPriorityQueue[T]) Insert(data T)
func (LinkedListPriorityQueue[T]) Length ¶
func (queue LinkedListPriorityQueue[T]) Length() int
type PriorityQueue ¶
type PriorityQueue[T cmp.Ordered] interface { //Add new item to the priority queue Insert(data T) //Get priority queue length Length() int }
Priority queue is a data structure used to find the maximum or minimum element among a collection of elements. Ascending priority queues are used to find the minimum element (DeleteMin). Descending priority queues are used to find the maximum element (DeleteMax). Priority queues are used for data compression, graph algorithms and sorting.
type SlicePriorityQueue ¶
func NewSlicePriorityQueue ¶
func NewSlicePriorityQueue[T cmp.Ordered]() SlicePriorityQueue[T]
func (*SlicePriorityQueue[T]) DeleteMax ¶
func (queue *SlicePriorityQueue[T]) DeleteMax() T
func (*SlicePriorityQueue[T]) DeleteMin ¶
func (queue *SlicePriorityQueue[T]) DeleteMin() T
func (SlicePriorityQueue[T]) GetMax ¶
func (queue SlicePriorityQueue[T]) GetMax() T
func (SlicePriorityQueue[T]) GetMin ¶
func (queue SlicePriorityQueue[T]) GetMin() T
func (*SlicePriorityQueue[T]) Insert ¶
func (queue *SlicePriorityQueue[T]) Insert(data T)
func (SlicePriorityQueue[T]) Length ¶
func (queue SlicePriorityQueue[T]) Length() int
type SortedLinkedListPriorityQueue ¶
type SortedLinkedListPriorityQueue[T cmp.Ordered] struct { *linkedlist.SinglyLinkedList[T] }
func NewSortedLinkedListPriorityQueue ¶
func NewSortedLinkedListPriorityQueue[T cmp.Ordered]() SortedLinkedListPriorityQueue[T]
func (*SortedLinkedListPriorityQueue[T]) DeleteMax ¶
func (queue *SortedLinkedListPriorityQueue[T]) DeleteMax() T
func (*SortedLinkedListPriorityQueue[T]) DeleteMin ¶
func (queue *SortedLinkedListPriorityQueue[T]) DeleteMin() T
func (SortedLinkedListPriorityQueue[T]) GetMax ¶
func (queue SortedLinkedListPriorityQueue[T]) GetMax() T
func (SortedLinkedListPriorityQueue[T]) GetMin ¶
func (queue SortedLinkedListPriorityQueue[T]) GetMin() T
func (*SortedLinkedListPriorityQueue[T]) Insert ¶
func (queue *SortedLinkedListPriorityQueue[T]) Insert(data T)
func (SortedLinkedListPriorityQueue[T]) Length ¶
func (queue SortedLinkedListPriorityQueue[T]) Length() int
type SortedSlicePriorityQueue ¶
func NewSortedSlicePriorityQueue ¶
func NewSortedSlicePriorityQueue[T cmp.Ordered]() SortedSlicePriorityQueue[T]
func (*SortedSlicePriorityQueue[T]) DeleteMax ¶
func (queue *SortedSlicePriorityQueue[T]) DeleteMax() T
func (*SortedSlicePriorityQueue[T]) DeleteMin ¶
func (queue *SortedSlicePriorityQueue[T]) DeleteMin() T
func (SortedSlicePriorityQueue[T]) GetMax ¶
func (queue SortedSlicePriorityQueue[T]) GetMax() T
func (SortedSlicePriorityQueue[T]) GetMin ¶
func (queue SortedSlicePriorityQueue[T]) GetMin() T
func (*SortedSlicePriorityQueue[T]) Insert ¶
func (queue *SortedSlicePriorityQueue[T]) Insert(data T)
func (SortedSlicePriorityQueue[T]) Length ¶
func (queue SortedSlicePriorityQueue[T]) Length() int
Click to show internal directories.
Click to hide internal directories.