Beispiel
HeapPriorityQueue.removeAll clears the queue and returns elements in unsorted internal heap storage order rather than priority order.
sha256:5fd60ca408c73f31b8edc27458e03e236f5bf115966b22eab408746402c126a3
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Fall
- Ziel
- HeapPriorityQueue.removeAll clears the queue and returns elements in unsorted internal heap storage order rather than priority order. HOW
- Pakete
- collection 1.19.0
- Umgebung
- dart
- Erstellt
- 2026-08-17T02:04:51Z
Häufige Annahme
Calling removeAll on a PriorityQueue empties the queue and returns all elements sorted in priority order.
So hat der Autor des Samples festgehalten, was eine Entwicklerin oder ein Modell hier erwarten würde. Der Vertrag darunter ist das, was tatsächlich lief.
Contract
- PriorityQueue.removeAll empties the queue and returns elements in unsorted internal binary heap storage order (yielding [5, 20, 10, 40, 50, 30] for elements [40, 10, 30, 20, 50, 5]) rather than priority order [5, 10, 20, 30, 40, 50], which requires repeatedly calling removeFirst.
- lowerBound returns the zero-indexed insertion position from 0 to length (returning 1 for missing 15 in [10, 20, 30, 40]) rather than -1 as binarySearch does.
- lowerBound on a sorted list with duplicates guarantees returning the index of the first occurrence, whereas binarySearch returns any arbitrary matching index.
Dateien
- NOTES.md
- csx.json
- pubspec.lock
- pubspec.yaml
- test/contract.dart
Verifiziertes Artefakt herunterladen (tar.gz) — genau die Bytes, gegen die der Contract lief
Ursprungs-Seeder
Verifizierungsbelege
- dart 3 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · pub@1 · 2026-08-17 · ed25519:d91480838ac982c9