Sobes.tech
Junior

Proqramlaşdırma kontekstində yığın necə işləyir?

sobes.tech Süni İntellekt

AI-dan cavab

Yığın, LIFO (Last-In, First-Out) prinsipinə əsaslanan abstrakt məlumat növüdür.

Yığın ilə əsas əməliyyatlar:

  • Push: Elementi yığının üstünə əlavə etmək.
  • Pop: Yığının üst elementini silmək və geri qaytarmaq.
  • Peek (və ya Top): Yığının üst elementini silmədən geri qaytarmaq.
  • isEmpty: Yığının boş olub-olmadığını yoxlamaq.
  • size: Yığındakı elementlərin sayını geri qaytarmaq.

Kotlin-də MutableList istifadə edərək yığın nümunəsi:

class Stack<T> {

    private val elements = mutableListOf<T>()

    fun push(item: T) {
        elements.add(item)
    }

    fun pop(): T? {
        return if (!isEmpty()) {
            elements.removeAt(elements.size - 1)
        } else {
            null // Yaxud istisna atmaq olar
        }
    }

    fun peek(): T? {
        return if (!isEmpty()) {
            elements.last()
        } else {
            null
        }
    }

    fun isEmpty(): Boolean {
        return elements.isEmpty()
    }

    fun size(): Int {
        return elements.size
    }
}

Yığından proqramlaşdırmada çox istifadə olunur:

  • İfadələrin hesablanması: İnfix notasiya postfix və ya prefix-ə çevrilməsi, postfix ifadələrin hesablanması.
  • Funksiyaların/metodların çağırışlarının idarə olunması: Çağırış yığını aktiv funksiyalar haqqında məlumat saxlayır.
  • Əməliyyatların geri alınması/yenidən icrası: Kod və qrafik redaktorlar əməliyyatların tarixçəsini saxlamaq üçün yığından istifadə edir.
  • Qraf və ağacların gəzilməsi: DFS (dərinliklə axtarış) algoritminin həyata keçirilməsi üçün istifadə olunur.
  • Sintaktik analiz: Parsers sintaksisin düzgünlüyünü yoxlamaq üçün yığından istifadə edir.

Yığın əsas məlumat strukturu olub, çoxsaylı algoritmların və aşağı səviyyəli mexanizmlərin işləmə prinsiplərini anlamaqda vacibdir.