大家好,我是猿二哥,今天我想和大家一起分享一下我最近的学习数据结构的心得,今天我们学习利用js的数组实现栈和队列。
利用js实现栈
/**
- 栈遵循的是后进先出原则,一个栈有压栈,出栈,栈顶,栈底,查找
- 等方法
*/
class Stack {
constructor() {
this.items = [];
}
push(element) {
this.items.push(element);
}
pop() {
this.items.pop();
}
peek() {
//查看栈顶元素
return this.items[items.length - 1];
}
isEmpty() {
return this.items.length === 0;
}
size() {
return this.items.length;
}
clear() {
this.items.length = 0;
}
toString() {
return this.items.toString();
}
printf() {
return console.log(this.items.toString());
}
}
let stack = new Stack();
stack.push(4);
stack.push(5);
stack.push(6);
stack.pop();
stack.printf();
let size = stack.size();
console.log(size);
利用js 实现队列
class Queen {
constructor() {
this.items = [];
}
push(element) {
//添加队列元素
this.items.push(element);
}
pop() {
this.items.pop();
}
peek(index) {
return this.items[index];
}
toString() {
return this.items.toString();
}
print() {
return console.log(this.items.toString());
}
}
let queen = new Queen();
queen.push(1);
queen.print();