mazesolver/util/queue/queue.go
2025-02-01 15:09:47 -07:00

26 lines
356 B
Go

package queue
type QueueInterface interface {
enqueue(int)
dequeue() int
}
type Queue[T any] []T
func (q *Queue[T]) Enqueue(v T) {
*q = append(*q, v)
}
func (q *Queue[T]) Dequeue() T {
x := (*q)[0]
*q = (*q)[1:]
return x
}
func (q *Queue[T]) IsEmpty() bool {
if len(*q) == 0 {
return true
}
return false;
}