栈的数据结构
- 栈是一种遵从后进先出原则的有序集合
- 新添加和要删除的元素都会在栈顶
- 新元素都会在栈顶,旧元素都会在栈底
创建基于数组的栈
栈中的方法 | 描述 |
---|
push(element) | 向栈顶添加一个元素 |
pop() | 删除栈顶的元素 |
peek() | 返回栈顶的元素 |
isEmpty() | 判断栈里有没有元素,有就返回true,否则返回false |
clear() | 删除栈里所有的元素 |
size() | 返回栈里所有元素的个数 |
class Stack{
constructor(){
this.items = []
}
push(element){
this.items.push(element)
}
pop(){
return this.items.pop()
}
peek(){
return this.items[this.items.length-1]
}
isEmpty(){
return this.items.length === 0
}
size(){
return this.items.length
}
clear(){
this.items = []
}
toString(){
let str = this.items[0]+""
for(let i=1,length=this.items.length;i<length;i++){
str = `${str},${this.items[i]}`
}
return str
}
}