queue.go
func (queue *queue) Push(element interface{}) {
	if queue.size == queue.cap {
		queue.resize(queue.cap * 2)
	}

	queue.elements[queue.end%int64(queue.cap)] = element
	queue.end++
	queue.size++
}
func (queue *queue) Push(element interface{}) {
	if queue.size == queue.cap {
		queue.resize(queue.cap * 2)
	}

	queue.elements[queue.end%int64(queue.cap)] = element
	queue.end++
	queue.size++
}
// Push adds an element at the end of the queue.