Sobes.tech
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:

  1. Yeni bir düğüm (liste öğesi) oluşturulur ve içine eklenmek istenen değer yerleştirilir.
  2. Yeni düğümün göstericisi, mevcut en üstteki yığının öğesine (yani bağlı listenin başına) ayarlanır.
  3. 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
    }
}