Junior — Middle
Millistes olukordades on soovitatav kasutada seotud nimekirja (LinkedList)?
sobes.tech AI
Vastus AI-lt
Soovitatav on kasutada ühendatud nimekirja (LinkedList) olukordades, kus:
- Sagedased sisestus- ja kustutamistoimingud kogu keskosas, kuna LinkedList võimaldab seda teha tõhusalt ilma elemente liigutamata, erinevalt massiividest.
- Ei ole vaja kiiret juhuslikku juurdepääsu indeksi järgi, kuna LinkedListil on lineaarne juurdepääsuaeg.
- Vajalik on dünaamilise suurusega andmestruktuuri rakendamine, kus elementide arv sageli muutub.
Näide kasutamisest iOS-is (Swift):
class Node<T> {
var value: T
var next: Node?
init(value: T) {
self.value = value
}
}
class LinkedList<T> {
var head: Node<T>?
func append(_ value: T) {
let newNode = Node(value: value)
if let lastNode = head {
var current = lastNode
while current.next != nil {
current = current.next!
}
current.next = newNode
} else {
head = newNode
}
}
}
Seega on LinkedList kasulik, kui sisestamise ja kustutamise tõhusus on olulisem kui juhuslik juurdepääs.