栈
Stack
import LinkedList from '../linked-list/LinkedList.js';
export default class Stack {
constructor() {
this.linkedList = new LinkedList();
}
isEmpty() {
return !!this.linkedList.head;
}
peek() {
if (!this.linkedList.head) {
return null;
}
return this.linkedList.head.value;
}
push(value) {
this.linkedList.prepend(value);
}
pop() {
const removedHead = this.linkedList.deleteHead();
return removedHead ? removedHead.value : null;
}
toString(callback) {
return this.linkedList.toString(callback);
}
}