JavaScript 数据结构(4):优先级队列 PriorityQueue

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wlx1991/article/details/49995269
/**
 * 优先级队列(Priority Queue)
 * 先进先出
 */

// Array 实现
function PriQueue () {
    var arr = [];

    return {
        insert: function(item){
            arr.push(item);
            arr.sort();
        },
        remove: function(){
            return arr.shift();
        },
        peek: function(){
            return arr[0];
        },
        isEmpty: function(){
            return arr.length === 0;
        }
    };
}


var queue = new PriQueue();

queue.insert(3);
queue.insert(1);
queue.insert(2);

while(!queue.isEmpty()){
    console.log(queue.remove());
}

猜你喜欢

转载自blog.csdn.net/wlx1991/article/details/49995269