最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Typescript實(shí)現(xiàn)隊(duì)列的示例代碼

 更新時(shí)間:2024年08月23日 10:59:08   作者:samroom  
隊(duì)列作為一種數(shù)據(jù)結(jié)構(gòu),在現(xiàn)實(shí)生活中它可應(yīng)用于電影院、自助餐廳等場合,本文主要介紹了Typescript實(shí)現(xiàn)隊(duì)列的示例代碼,具有一定的參考價(jià)值,感興趣的可以了解一下

隊(duì)列的概念

  • 隊(duì)列是一個(gè)先進(jìn)先出(FIFO)的數(shù)據(jù)結(jié)構(gòu)。
  • 由于TS中沒有隊(duì)列,所以我們使用數(shù)組來模擬一個(gè)隊(duì)列并實(shí)現(xiàn)隊(duì)列的所有功能。

隊(duì)列圖示

隊(duì)列的操作

  • enqueue(element):向隊(duì)列尾部添加一個(gè)新的項(xiàng)
  • dequeue():移除隊(duì)列的第一項(xiàng),并且返回被移除的元素
  • peek():返回隊(duì)列中的第一個(gè)元素
  • isEmpty():判斷隊(duì)列是否為空
  • size():返回隊(duì)列的元素個(gè)數(shù)
  • print_queue():打印隊(duì)列中的元素

代碼實(shí)現(xiàn)

入隊(duì)

enqueue(item:T){
        this.items.push(item);
    }

移除隊(duì)首元素

//刪除第一個(gè)元素并且返回被刪除的元素
    dequeue(){
        return this.items.shift();
    }

返回隊(duì)首元素

 //返回隊(duì)列中的第一個(gè)元素
    peek(){
        return this.items[0];
    }

判斷隊(duì)列是否為空

//判斷隊(duì)列是否為空
    isEmpty(){
        return this.items.length ? false : true;
    }

獲取隊(duì)列的大小

	//返回隊(duì)列大小
    size(){
        return this.items.length;
    }

打印隊(duì)列中的元素

//打印隊(duì)列中的元素
    print_queue(){
        for(let i =0;i<this.items.length;i++){
            console.log(this.items[i]);
        }
    }

代碼測試

測試

測試結(jié)果如下:

在這里插入圖片描述

完整代碼

//用數(shù)組實(shí)現(xiàn)隊(duì)列
class queue<T>{
    private items:T[]

    constructor(){
        this.items = [];
    }

    enqueue(item:T){
        this.items.push(item);
    }

    //刪除第一個(gè)元素并且返回被刪除的元素
    dequeue(){
        return this.items.shift();
    }

    //返回隊(duì)列中的第一個(gè)元素
    peek(){
        return this.items[0];
    }

    //判斷隊(duì)列是否為空
    isEmpty(){
        return this.items.length ? false : true;
    }

    //返回隊(duì)列大小
    size(){
        return this.items.length;
    }

    //打印隊(duì)列中的元素
    print_queue(){
        for(let i =0;i<this.items.length;i++){
            console.log(this.items[i]);
        }
    }

}

let queue_example= new queue();

queue_example.enqueue(10)
queue_example.enqueue('熊大')
if(queue_example.isEmpty()){console.log('隊(duì)列為空')}
else{console.log('隊(duì)列非空')}
queue_example.print_queue();
console.log('隊(duì)首元素是:'+queue_example.peek());
queue_example.dequeue()
console.log(queue_example.peek());

到此這篇關(guān)于Typescript實(shí)現(xiàn)隊(duì)列的示例代碼的文章就介紹到這了,更多相關(guān)Typescript 隊(duì)列內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

最新評(píng)論

旌德县| 丰原市| 杨浦区| 崇信县| 龙川县| 裕民县| 肇源县| 垣曲县| 崇阳县| 洛宁县| 章丘市| 象山县| 兴城市| 昌平区| 西吉县| 大城县| 吉木乃县| 十堰市| 吉安县| 大洼县| 和田县| 安化县| 通化县| 隆子县| 四会市| 敦化市| 牡丹江市| 大余县| 民乐县| 长兴县| 兰坪| 柳江县| 东辽县| 连州市| 天水市| 合江县| 观塘区| 中山市| 华亭县| 奈曼旗| 淮南市|