1 //queue佇列結構 2 //佇列的特點:先進先出 3 import console; 4 class queueEx{ 5 ctor(){ 6 this.items = {} 7 }; 8 //排隊 9 入隊 = function(element){ 10 ..table.push(this.items,element); 11 } 12 //出列 13 出隊 = function(){ 14 return..table.shift(this.items); 15 } 16 //插隊 17 插隊 = function(value){ 18 ..table.insert(this.items,value) 19 } 20 21 //前面 22 隊首 = function(){ 23 return this.items[1]; 24 } 25 //清空棧 26 清空 = function(){ 27 this.items = {}; 28 } 29 //是否為空棧 30 是否空隊 = function(){ 31 return !#this.items; 32 } 33 34 //大小 35 大小 = function(){ 36 return #this.items; 37 } 38 //列印佇列 39 列印 = function(){ 40 return ..string.join(this.items,",") 41 } 42 43 } 44 45 //例項化棧 46 var Queue = queueEx(); 47 48 //排隊 49 Queue.入隊("A"); 50 Queue.入隊("B"); 51 Queue.入隊("C"); 52 Queue.入隊("D"); 53 54 //插隊 55 Queue.插隊("E") 56 Queue.插隊("F") 57 Queue.插隊("G") 58 59 //大小 60 console.log("佇列大小 ",Queue.大小()) 61 62 63 //是否為空棧 64 console.log("是否空棧 ",Queue.是否空隊()) 65 66 //出隊 67 console.log("出隊 ",Queue.出隊()) 68 69 console.log("出隊 ",Queue.出隊()) 70 71 72 //前面 73 console.log("第一位 ",Queue.隊首()) 74 75 //大小 76 console.log("佇列大小 ",Queue.大小()) 77 78 //列印全部佇列資料 79 console.log("列印佇列資料 ",Queue.列印()) 80 81 console.pause(true);