一、数组

二、栈

栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。
class Stack{    constructor(){        this.item = []    }    push(element){        this.item.push(element)    }    pop(){        return this.item.pop()    }    peek(){        return this.item[this.item.length-1]    }    isEmpty(){        return this.item.length === 0    }    clear(){        this.item = []    }    size(){        return this.item.length    }}

三、队列

队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。
class Queue{
constructor(){    this.item = []}enqueue(element){    this.item.push(element)}dequeue(){    return this.item.shift()}front(){    return this.item[0]}isEmpty(){    return this.item.length === 0}size(){    return this.item.length}

}