欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javaScript實現(xiàn)一個隊列的方法

 更新時間:2020年07月14日 11:49:38   作者:放學(xué)別跑啊  
這篇文章主要介紹了javaScript實現(xiàn)一個隊列的方法,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下

1.隊列是遵循先進(jìn)先出(FIFO)原則的一組有序的項,隊列在尾部添加元素,并從頂部移除元素,最新添加的元素必須排在隊列的末尾。生活中常見的例子如排隊等。

2.創(chuàng)建一個隊列類

class Queue{
  constructor(){
    this.count = 0;//記錄隊列的數(shù)量
    this.lowestCount = 0;//記錄當(dāng)前隊列頭部的位置
    this.items = [];//用來存儲元素。
  }
}

3.添加元素

 enqueue(element){
    this.items[this.count] = element;
    this.count++;
  }

4.刪除元素(只刪除隊列頭部)

dequeue(){
    if(this.isEmpty()){
      return 'queue is null';
    }
    let resulte = this.items[this.lowestCount];
    delete this.items[this.lowestCount];
    this.lowestCount++;
    return resulte;
  }

5.查看隊列頭部元素

  peek(){
    return this.items[this.lowestCount];
  }

6.判斷隊列是否為空

  isEmpty(){
    return this.count - this.lowestCount === 0;
  }

7.清除隊列的元素

  clear(){
    this.count = 0;
    this.lowestCount = 0;
    this.items = [];
  }

8.查看隊列的長度

 size(){
    return this.count - this.lowestCount;
  }

9.查看隊列的所有內(nèi)容

toString(){
    if(this.isEmpty())return "queue is null";
    let objString = this.items[this.lowestCount];
    for(let i = this.lowestCount+1; i < this.count;i++){
      objString = `${objString},${this.items[i]}`;
    }
    return objString;
  }

10.完整代碼

class Queue{
  constructor(){
    this.count = 0;//記錄隊列的數(shù)量
    this.lowestCount = 0;//記錄當(dāng)前隊列頂部的位置
    this.items = [];//用來存儲元素。
  }
  enqueue(element){
    this.items[this.count] = element;
    this.count++;
  }
  dequeue(){
    if(this.isEmpty()){
      return 'queue is null';
    }
    let resulte = this.items[this.lowestCount];
    delete this.items[this.lowestCount];
    this.lowestCount++;
    return resulte;
  }
  peek(){
    return this.items[this.lowestCount];
  }
  isEmpty(){
    return this.count - this.lowestCount === 0;
  }
  size(){
    return this.count - this.lowestCount;
  }
  clear(){
    this.count = 0;
    this.lowestCount = 0;
    this.items = [];
  }
  toString(){
    if(this.isEmpty())return "queue is null";
    let objString = this.items[this.lowestCount];
    for(let i = this.lowestCount+1; i < this.count;i++){
      objString = `${objString},${this.items[i]}`;
    }
    return objString;
  }
}

11.運行結(jié)果

以上就是javaScript實現(xiàn)一個隊列的方法的詳細(xì)內(nèi)容,更多關(guān)于javaScript實現(xiàn)一個隊列的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論