Junior — Middle
Millised on Stack andmestruktuuri peamised eelised ja puudused?
sobes.tech AI
Vastus AI-lt
Järjekord (Queue) on andmestruktuur, kus elemendid lisatakse lõppu ja eemaldatakse algusest, toimib FIFO (First In, First Out) põhimõttel.
Eelised:
- Lihtne realiseerida ja kasutada.
- Kiire juurdepääs esimesele elemendile.
- Sobib erinevates rakendustes, kus oluline on säilitada sisestamise järjekord.
Miinused:
- Piiratud juurdepääs: saab töötada ainult esimese elemendiga.
- Võib olla piiratud suurusega, kui seda ei laiendata dünaamiliselt.
Näide Go keeles:
package main
import "fmt"
type Queue []int
func (q *Queue) Enqueue(v int) {
*q = append(*q, v)
}
func (q *Queue) Dequeue() (int, bool) {
if len(*q) == 0 {
return 0, false
}
elem := (*q)[0]
*q = (*q)[1:]
return elem, true
}
func main() {
var q Queue
q.Enqueue(1)
q.Enqueue(2)
fmt.Println(q.Dequeue()) // 1, true
fmt.Println(q.Dequeue()) // 2, true
}