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.