美文网首页
5.3 【队列】js_队列_数据结构

5.3 【队列】js_队列_数据结构

作者: 狩秋之人 | 来源:发表于2019-11-08 14:48 被阅读0次

    用js盲撸的队列,不想码字,只上代码吧。。。

    function quene () {
        
        let elements = [];
    
        // enqueue 尾部添加项
        this.enqueue = function (element) {
            elements.push(element)
            console.log('添加元素' + element + '成功!');
            return 200
        }
        
        // dequeue 移除首项并返回移除项的值
        this.dequeue = function () {
            return elements.shift();
    
        }
        // front 返回第一个元素
        this.front = function () {
            return elements[0];
        }
    
        // isEmpty 是否为空
        this.isEmpty = function () {
            return elements.length == 0 ? '队列空' : '队列不空'
        }
    
        // size 队列大小
        this.size = function () {
            return elements.length
        }
    
        // 查看队列数值
        // 改进之前栈的代码,可以使用箭头函数
        this.showAll = function () {
            elements.forEach((num) => {
                console.log(num);
            }) 
        }
    }
    
    // 测试
    let quene1 = new quene();
    console.log('1. 测试插入数值');
    quene1.enqueue(1);
    quene1.enqueue(2);
    quene1.enqueue(3);
    quene1.enqueue(4);
    quene1.enqueue(5);
    quene1.enqueue(6);
    quene1.enqueue(7);
    console.log('-------');
    console.log('2. 测试移除首项');
    console.log(quene1.dequeue());
    console.log('-------');
    console.log('3. 测试返回元素');
    console.log(quene1.front());
    console.log('-------');
    console.log('4. 测试是否为空');
    console.log(quene1.isEmpty());
    console.log('-------');
    console.log('5. 测试队列大小');
    console.log(quene1.size());
    console.log('-------');
    
    

    相关文章

      网友评论

          本文标题:5.3 【队列】js_队列_数据结构

          本文链接:https://www.haomeiwen.com/subject/yvaibctx.html