package structures // Queue 是用于存放 int 的队列 type Queue struct { nums []int } // NewQueue 返回 *kit.Queue func NewQueue() *Queue { return &Queue{nums: []int{}} } // Push 把 n 放入队列 func (q *Queue) Push(n int) { q.nums = append(q.nums, n) } // Pop 从 q 中取出最先进入队列的值 func (q *Queue) Pop() int { res := q.nums[0] q.nums = q.nums[1:] return res } // Len 返回 q 的长度 func (q *Queue) Len() int { return len(q.nums) } // IsEmpty 反馈 q 是否为空 func (q *Queue) IsEmpty() bool { return q.Len() == 0 }