1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | var PriorityQueue = (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 | }());
|
35 | exports.default = PriorityQueue;
|
36 |
|
\ | No newline at end of file |