Junior — Middle
Bağlı liste kullanılarak uygulanmış bir yığına yeni bir öğe eklendiğinde hangi süreçler gerçekleşir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Yığın (stack) içine yeni bir öğe eklenirken, bağlı liste kullanılarak uygulandığında şu adımlar gerçekleşir:
- Yeni bir düğüm (liste öğesi) oluşturulur ve içine eklenmek istenen değer yerleştirilir.
- Yeni düğümün göstericisi, mevcut en üstteki yığının öğesine (yani bağlı listenin başına) ayarlanır.
- Bağlı listenin başı, yeni düğüme güncellenir — böylece yeni öğe yığının en üst öğesi olur.
Bu şekilde, push işlemi sabit zamanlı O(1) olarak gerçekleştirilir, çünkü listeyi dolaşmaya gerek yoktur.
Kotlin örneği:
class Node<T>(val value: T, var next: Node<T>? = null)
class Stack<T> {
private var head: Node<T>? = null
fun push(value: T) {
val newNode = Node(value)
newNode.next = head
head = newNode
}
fun pop(): T? {
val value = head?.value
head = head?.next
return value
}
}