天天看點

JavaScript 隊列(一)

隊列是遵循 FIFO(First In First Out,先進先出,也稱為先來先服務)

原則的一組有序的項。

隊列在尾部添加新元素,并從頂部移除元素。最新添加的元素必須排在隊列的末尾。

在現實中,最常見的隊列的例子就是排隊。

JavaScript 隊列(一)
function Queue(){//聲明隊列對象
    
    var items = [];//隊列的承載

    //向隊列尾部添加一個或多個新的項
    this.enqueue = function(el){
        items.push(el)
    }

    //删除隊列頭部第一個元素
    this.dequeue = function(){
        return items.shift();
    }

    //傳回隊列中第一個元素
    this.front = function(){
        return items[0];
    }

    //确定元素是否為空 為空則為true 不為空則為false
    this.isEmpty = function(){
        return items.length === 0;
    }

    //傳回隊列長度
    this.size = function(){
        return items.length;
    }

    //列印隊列
    this.print = function(){
        console.log(items.toString())
    }
}           

使用隊列類:

//執行個體化類
var queue = new Queue();

//驗證是否為空
console.log(queue.isEmpty())   //true

queue.enqueue('ma');
queue.enqueue('jack');

queue.print();//ma,jack

console.log(queue.size())//2

queue.dequeue();//jack
queue.print();//jack
console.log(queue.size())//1           
JavaScript 隊列(一)

繼續閱讀