Implementera köer i Java
En kö är en grundläggande datastruktur som följer First-In, First-Out-principen (FIFO). Java tillhandahåller flera sätt att skapa och använda köer.
Använda Java Collections Framework
- Paketet
java.utilerbjuder kögränssnitt och klasser. Köär det primära gränssnittet.LinkedList,PriorityQueueochArrayDequeär vanliga implementeringar.
- Importera de nödvändiga klasserna:
java.util.Queueoch den önskade implementeringen (t.ex.java.util.LinkedList). - Skapa en köinstans:
Queuequeue = new LinkedList<>(); - Lägg till element: Använd
queue.offer(element)för att lägga till på baksidan. - Ta bort element: Använd
queue.poll()för att ta bort från framsidan. Returnerarnullom tom. - Titta på det främre elementet: Använd
queue.peek()utan att ta bort det. Returnerarnullom tom. - Kontrollera om det är tomt: Använd
queue.isEmpty(). - Hämta köstorleken: Använd
queue.size().
Jämförde köimplementeringar
| Implementering | Underliggande datastruktur | Prestanda (Lägg till/ta bort) | Trådsäkerhet |
|---|---|---|---|
LinkedList |
Dubbellänkad lista | O(1) | Inte i sig trådsäker |
Prioritetskö |
Hög | O(log n) | Inte i sig trådsäker |
ArrayDeque |
Ändra storlek på array | O(1) (avskriven) | Inte i sig trådsäker |
Tänk på trådsäkerhet om din kö kommer att nås av flera trådar samtidigt. Externa synkroniseringsmekanismer kan behövas.
Copyright ©antizone.pages.dev 2026