Klasse "Aufgaben-Tracker" mit Prioritäten

TypeScript Medium classes

Aufgabe «Klasse "Aufgaben-Tracker" mit Prioritäten»

Implementieren Sie die Klasse TaskTracker, die eine Liste von Aufgaben mit Prioritäten (Zahl von 1 bis 5, wobei 1 die höchste ist) verwaltet. Die Klasse muss folgende Methoden haben: addTask(id, priority) — fügt eine Aufgabe mit der angegebenen id (Zeichenkette) und Priorität hinzu; removeTask(id) — entfernt eine Aufgabe anhand der id; getTask(id) — gibt die Priorität der Aufgabe zurück oder null, wenn sie nicht existiert; getHighestPriority() — gibt die id der Aufgabe mit der höchsten Priorität (kleinste Zahl) zurück. Wenn es mehrere gibt — geben Sie die id zurück, die früher hinzugefügt wurde. Wenn es keine Aufgaben gibt — geben Sie null zurück. Implementieren Sie die Methoden ohne Verwendung eingebauter Sortierungen, indem Sie eine Datenstruktur Ihrer Wahl verwenden.

Eingabeformat

Die erste Zeile: Zahl N — Anzahl der Befehle. Dann folgen N Zeilen, jede enthält einen Befehl: add id priority, remove id, get id, highest.

Ausgabeformat

Für jeden Befehl get und highest geben Sie das Ergebnis in einer separaten Zeile aus. Für get — eine Zahl (Priorität) oder null, für highest — id oder null.

Beispiele

Beispiel 1

EINGABE
4 add a 5 add b 5 highest remove a highest
AUSGABE
a
main.ts