模拟实现栈数据结构(先进后出)
这是我身边的小伙伴去面试的时候遇到的一个面试题,当时就把他问懵逼了,这笔试题还真是需要灵活的思维,和足够强的应变能力,咱看了也不能说一点不会吧,一点代码没写出来当时。那给我朋友和面试官尴尬的哟,真想找个地缝钻进去,可惜当时是没有地缝的,哈哈
这里把这道题的解题代码直接附上
- 题目是这样的
- 想要实现的效果是这样的
这里直接给大家上代码,为了方便大家直接复制,咱不贴图,救说坐着贴不贴心就完事了
class Stack{
constructor() {
this.items = []
}
in(value) {
this.items.push(value)
}
out() {
if(this.size() <= 0) return null
return this.items.pop()
}
top() {
if (this.size() <=0 ) return null
return this.items[this.size() -1 ]
}
size() {
return this.items.length
}
}
const stack = new Stack()
stack.in('x')
stack.in('y')
stack.in('z')
console.log(stack.top())
console.log(stack.size())
console.log(stack.out())
console.log(stack.top())
console.log(stack.size())
- 实现的控制台效果在这里
请大家参考......