UNPKG

1.1 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3var PriorityQueue = /** @class */ (function () {
4 function PriorityQueue() {
5 this.arr = [];
6 this.prios = [];
7 }
8 PriorityQueue.prototype.add = function (t, prio) {
9 for (var i = 0; i < this.arr.length; i++) {
10 if (this.prios[i] < prio) {
11 this.arr.splice(i, 0, t);
12 this.prios.splice(i, 0, prio);
13 return;
14 }
15 }
16 this.arr.push(t);
17 this.prios.push(prio);
18 };
19 PriorityQueue.prototype.forEach = function (f) {
20 for (var i = 0; i < this.arr.length; i++) {
21 f(this.arr[i], i, this.arr);
22 }
23 };
24 PriorityQueue.prototype.delete = function (t) {
25 for (var i = 0; i < this.arr.length; i++) {
26 if (this.arr[i] === t) {
27 this.arr.splice(i, 1);
28 this.prios.splice(i, 1);
29 return;
30 }
31 }
32 };
33 return PriorityQueue;
34}());
35exports.default = PriorityQueue;
36//# sourceMappingURL=PriorityQueue.js.map
\No newline at end of file