认识队列
- 队列(Queue),它是一种受限的线性表,先进先出(FIFO First In First Out)
- 受限之处在于它只允许在队列的前端(front)进行删除操作;
- 而在队列的后端(rear)进行插入操作;

typescript 实现队列
interface IQueue<T> {
enqueue(element: T): void;
dequeue(): T | undefined;
peek(): T | undefined;
isEmpty(): boolean;
size(): number;
}
class ArrayQueue<T> implements IQueue<T> {
private data: T[] = [];
enqueue(element: T): void {
this.data.push(element);
}
dequeue(): T | undefined {
return this.data.shift();
}
peek(): T | undefined {
return this.data[0];
}
isEmpty(): boolean {
return this.data.length === 0;
}
size(): number {
return this.data.length;
}
}