Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockingQueue ¶
type BlockingQueue[T any] struct { // contains filtered or unexported fields }
BlockingQueue 线程安全的队列,容量无限,用链表实现
func NewBlockingQueue ¶
func NewBlockingQueue[T any]() *BlockingQueue[T]
NewBlockingQueue 新建一个线程安全的队列
func (*BlockingQueue[T]) Len ¶
func (q *BlockingQueue[T]) Len() int64
type PriorityQueue ¶
type PriorityQueue[T any] interface { Add(e T) Peek() T Remove(o T) bool Contains(o T) bool // ToSlice 返回队列中的所有元素。 // // 注意,ToSlice并不一定按照大小顺序返回 ToSlice(in []T) []T // Foreach 循环对队列中的每个元素调用函数f。对于f的返回值,若返回true表示继续循环,返回false表示跳出循环。 // // 注意,Foreach并不一定按照大小顺序执行 Foreach(f func(e T) bool) Len() int Clear() Poll() T }
PriorityQueue 优先队列
func NewDefaultPriorityQueue ¶
func NewDefaultPriorityQueue[T cmp.Ordered](values []T) PriorityQueue[T]
NewDefaultPriorityQueue 用给定的初始值新建优先队列
func NewPriorityQueue ¶
func NewPriorityQueue[T any](values []T, comparator func(o1, o2 T) int) PriorityQueue[T]
NewPriorityQueue 用给定的初始值和比较函数新建优先队列
Click to show internal directories.
Click to hide internal directories.