前端算法学习(二)-------- 栈和队列

特性:后进先出,就好比在一个只有一个口的箱子里放东西,前面先放进去的东西只能后面再拿出来

function Stack() {
    this.arr  = [];
    this.push = function (value) {
        this.arr.push(value);
    };
    this.pop = function () {
        return this.arr.pop();
    };
}
var stack = new Stack();
stack.push(1);
stack.push(2);
stack.push(3);
console.log(stack.arr);
console.log(stack.pop());
console.log(stack.arr);

队列

特性:先进先出,就好比一条队伍,先进去的人就先出来

function Queue() {
    this.arr  = [];
    this.push = function (value) {
        this.arr.push(value);
    };
    this.pop = function () {
        return this.arr.shift();
    };
}
var queue = new Queue();
queue.push(1);
queue.push(2);
queue.push(3);
console.log(queue.arr);
console.log(queue.pop());
console.log(queue.arr);

 

你可能感兴趣的:(前端,算法,数据结构,栈,队列)