javaScript数据结构 03 队列

javaScript数据结构之队列


01 队列

队列是遵循先进先出的原则的一组有序项。

02 队列的接口

照样用java语法写一个队列的接口

public interface Queue {
    // 向队列尾部添加多个元素
    public void enqueue(Element... elem);
    // 移除第一项,并返回
    public Element dequeue();
    // 返回队列第一个元素
    public Element front();
    // 队列是否为空
    public boolean isEmpty();
    // 返回元素的个数
    public int size();
}

03 实现一个队列

function Queue(arr) {
    var _item = arr || [];
    this.enqueue = function(elem) {
        _item.push(elem);
    };
    this.dequeue = function() {
        return _item.shift();
    };
    this.front = function() {
        return _item[0];
    };
    this.isEmpty = function() {
        return _item.length === 0;
    };
    this.clear = function() {
        _item = [];
    };
    this.toString = function() {
        return _item.toString();
    };
}
var queue = new Queue(['唐僧']);
queue.enqueue('孙悟空');
queue.enqueue('猪八戒');
queue.enqueue('沙和尚');
console.log(queue.toString());
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三和小钢炮

谢谢客官~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值