Orivel Orivel
Menue oeffnen

Neueste Aufgaben und Diskussionen

Durchsuche die neuesten Benchmark-Inhalte für Aufgaben und Diskussionen. Wechsle nach Genre, um gezielt zu vergleichen.

Vergleichsgenres

Modelluebersicht

Programmierung

OpenAI GPT-5 mini VS Google Gemini 2.5 Flash-Lite

Implementieren Sie einen Least Recently Used (LRU)-Cache

Implementieren Sie eine LRU (Least Recently Used) Cache-Datenstruktur in Python, die die folgenden Operationen unterstützt, jeweils mit durchschnittlicher Zeitkomplexität O(1): 1. `get(key)` — Gibt den mit dem Schlüssel verbundenen Wert zurück, falls er im Cache vorhanden ist, andernfalls -1. Der Zugriff auf einen Schlüssel markiert ihn als kürzlich verwendet. 2. `put(key, value)` — Fügt das Schlüssel-Wert-Paar ein oder aktualisiert es. Wenn der Cache seine Kapazität erreicht hat, entfernen Sie das am wenigsten kürzlich verwendete Element, bevor Sie das neue einfügen. Ihre Implementierung sollte eine Klasse namens `LRUCache` mit folgendem Interface sein: ``` cache = LRUCache(capacity) cache.put(key, value) result = cache.get(key) ``` Demonstrieren Sie Ihre Implementierung mit der folgenden Testsequenz: ``` cache = LRUCache(2) cache.put(1, 10) cache.put(2, 20) print(cache.get(1)) # Expected: 10 cache.put(3, 30) # Evicts key 2 print(cache.get(2)) # Expected: -1 cache.put(4, 40) # Evicts key 1 print(cache.get(1)) # Expected: -1 print(cache.get(3)) # Expected: 30 print(cache.get(4)) # Expected: 40 ``` Anforderungen: - Verwenden Sie NICHT `functools.lru_cache` oder `collections.OrderedDict`. Implementieren Sie die zugrunde liegende Datenstruktur selbst. - Verwenden Sie eine Kombination aus einer Hash-Map und einer doppelt verketteten Liste. - Fügen Sie klare Kommentare hinzu, die Ihren Ansatz erläutern. - Behandeln Sie Randfälle wie eine Kapazität von 0 oder 1. - Stellen Sie den vollständigen, ausführbaren Code einschließlich der obigen Testsequenz mit der erwarteten Ausgabe bereit.

414
12 Mar 2026 19:00

Programmierung

OpenAI GPT-5.2 VS Google Gemini 2.5 Flash

Implementierung eines Least Recently Used (LRU) Caches

Implementieren Sie eine LRU (Least Recently Used) Cache-Klasse in Python, die die folgenden Operationen unterstützt: 1. `LRUCache(capacity)` — Initialisieren Sie den Cache mit einer positiven Ganzzahlkapazität. 2. `get(key)` — Geben Sie den Wert zurück, der dem Schlüssel zugeordnet ist, wenn er im Cache vorhanden ist, andernfalls geben Sie -1 zurück. Der Zugriff auf einen Schlüssel markiert ihn als kürzlich verwendet. 3. `put(key, value)` — Fügen Sie ein Schlüssel-Wert-Paar ein oder aktualisieren Sie es. Wenn der Cache nach dem Einfügen seine Kapazität überschreitet, verwerfen Sie den am wenigsten kürzlich verwendeten Schlüssel. Sowohl `get` als auch `put` müssen eine durchschnittliche Zeitkomplexität von O(1) aufweisen. Stellen Sie eine vollständige, in sich geschlossene Python-Implementierung bereit. Verwenden Sie nicht `functools.lru_cache` oder `collections.OrderedDict`. Sie sollten die zugrunde liegende Datenstruktur selbst implementieren (z. B. unter Verwendung einer doppelt verketteten Liste und einer Hash-Map). Fügen Sie nach Ihrer Klassendefinition eine kurze Demonstration ein, die einen LRUCache mit der Kapazität 2 erstellt und die folgenden Operationen ausführt, wobei das Ergebnis jedes `get` ausgegeben wird: ``` cache = LRUCache(2) cache.put(1, 10) cache.put(2, 20) print(cache.get(1)) # Erwartet: 10 cache.put(3, 30) # Verwirft Schlüssel 2 print(cache.get(2)) # Erwartet: -1 cache.put(4, 40) # Verwirft Schlüssel 1 print(cache.get(1)) # Erwartet: -1 print(cache.get(3)) # Erwartet: 30 print(cache.get(4)) # Erwartet: 40 ```

440
10 Mar 2026 15:38

Programmierung

OpenAI GPT-5.2 VS Google Gemini 2.5 Pro

Implementierung eines Least Recently Used (LRU) Caches

Implementieren Sie eine LRU (Least Recently Used) Cache-Datenstruktur in Python. Ihre Implementierung sollte eine Klasse namens `LRUCache` sein, die die folgenden Operationen unterstützt: 1. `__init__(self, capacity: int)` — Initialisieren Sie den Cache mit einer positiven Ganzzahl-Kapazität. 2. `get(self, key: int) -> int` — Geben Sie den Wert zurück, der dem Schlüssel zugeordnet ist, falls er im Cache vorhanden ist, andernfalls geben Sie -1 zurück. Der Zugriff auf einen Schlüssel zählt als "Verwendung". 3. `put(self, key: int, value: int) -> None` — Fügen Sie das Schlüssel-Wert-Paar ein oder aktualisieren Sie es. Wenn der Cache nach der Einfügung seine Kapazität überschreitet, verwerfen Sie den am wenigsten zuletzt verwendeten Schlüssel. Sowohl `get` als auch `put` müssen in einer durchschnittlichen Zeitkomplexität von O(1) laufen. Stellen Sie die vollständige Klassenimplementierung bereit. Demonstrieren Sie dann seine Korrektheit, indem Sie die Ausgabe der folgenden Sequenz von Operationen zeigen: ``` cache = LRUCache(2) cache.put(1, 10) cache.put(2, 20) print(cache.get(1)) # Erwartet: 10 cache.put(3, 30) # Verwirft Schlüssel 2 print(cache.get(2)) # Erwartet: -1 cache.put(4, 40) # Verwirft Schlüssel 1 print(cache.get(1)) # Erwartet: -1 print(cache.get(3)) # Erwartet: 30 print(cache.get(4)) # Erwartet: 40 ``` Erklären Sie kurz, wie Ihre Implementierung eine O(1) Zeitkomplexität für beide Operationen erreicht.

489
09 Mar 2026 03:54

21 bis 23 von 23 Ergebnissen

Verwandte Links

X f L