JavaScript隊列結構——優先級隊列
function PriorityQueue(){
function QueueElement(element, priority){
this.element = element
this.priority = priority
}
this.items = []
PriorityQueue.prototype.enqueue = function(element, priority){
let queueElement = new QueueElement(element, priority)
if (this.items.length == 0){
this.items.push(queueElement)
}
else{
let isFind = false
for (let i =0 ; i<this.items.length ; i++){
if (queueElement.priority < this.items[i].priority){
this.items.splice(i, 0 ,queueElement)
isFind = true
break
}
}
if (isFind == false){
this.items.push(queueElement)
}
}
}
}