Non recursive Queue/Tree solution implementation
This commit is contained in:
@@ -7,18 +7,18 @@ type QueueInterface interface {
|
||||
|
||||
type Queue[T any] []T
|
||||
|
||||
func (q Queue[T]) Enqueue(v T) {
|
||||
q = append(q, v)
|
||||
func (q *Queue[T]) Enqueue(v T) {
|
||||
*q = append(*q, v)
|
||||
}
|
||||
|
||||
func (q Queue[T]) Dequeue() T {
|
||||
x := q[0]
|
||||
q = q[1:]
|
||||
func (q *Queue[T]) Dequeue() T {
|
||||
x := (*q)[0]
|
||||
*q = (*q)[1:]
|
||||
return x
|
||||
}
|
||||
|
||||
func (q Queue[T]) IsEmpty() bool {
|
||||
if len(q) == 0 {
|
||||
func (q *Queue[T]) IsEmpty() bool {
|
||||
if len(*q) == 0 {
|
||||
return true
|
||||
}
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user