Junior — Middle
V jakých situacích se doporučuje používat spojový seznam (LinkedList)?
sobes.tech AI
Odpověď od AI
Doporučuje se použití spojového seznamu (LinkedList) v situacích, kdy:
- Často dochází k operacím vkládání a mazání prvků uprostřed kolekce, protože LinkedList to umožňuje efektivně bez posunu prvků, na rozdíl od polí.
- Není potřeba rychlý náhodný přístup podle indexu, protože LinkedList má lineární čas přístupu.
- Je třeba implementovat datovou strukturu s dynamickou velikostí, kde se počet prvků často mění.
Příklad použití v iOS (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
}
}
}
Protože je LinkedList užitečný, když je důležitá efektivita vkládání a mazání, nikoli náhodný přístup.