Sobes.tech
Junior — Middle

Ինչպե՞ս կառուցել տվյալների շերտը օգտագործելով կապված ցանկը։

sobes.tech AI

Պատասխան AI-ից

Տեղադրված է բլոկը կարող է իրականացվել կապված ցանկի հիման վրա, որտեղ յուրաքանչյուր տարր (հատուկ) պարունակում է տվյալներ և հղում հաջորդ տարրին: Տեղադրված բլոկի վերևի տարրը ցանկի գլուխն է: հիմնական գործողությունները:

  • push — նոր հանգույց ավելացնել ցանկի սկզբին;
  • pop — հեռացնել հանգույցից ցանկի սկզբից և վերադարձնել նրա արժեքը;
  • peek — դիտել գլուխը առանց հեռացնելու:

Օրինակ Kotlin-ում:

class Node<T>(val data: T, var next: Node<T>? = null)

class Stack<T> {
    private var head: Node<T>? = null

    fun push(value: T) {
        val newNode = Node(value, head)
        head = newNode
    }

    fun pop(): T? {
        val value = head?.data
        head = head?.next
        return value
    }

    fun peek(): T? = head?.data

    fun isEmpty() = head == null
}

Այս մոտեցումը ապահովում է բլոկի գործողությունները O(1) ժամանակում և հնարավորություն է տալիս դինամիկ ընդլայնում առանց մեծ զանգվածի հատկացնելու անհրաժեշտության։