Stack İşlemleri İçin Yardımcı Fonksiyonlar

stack operasyonları
Öncelikli olarak Stack Nedir diye merak ediyorsanız ilgili makalemizi okuyabilirsiniz. Stack işlemleri için yardımcı fonksiyonlar genel olan ekleme ve çıkarma işlemlerine yöneliktir. Kontrol amaçlı kullanımları mevcuttur. Stack boş mu, dolu mu bu durumu kontrol etmektedirler.

Yardımcı Stack Fonksiyonları




isFull Fonksiyonu

Stack Push işlemi fonksiyonunun yardımcı fonksiyonudur. Stack veri yapısı dolu mu diye kontrol eder. Eğer doluysa Stack Overflow denilen durum oluştur. Stack overflow nedir diye sorarsanız, işte o ünlü kavram, Stack boyutunun dolması sonucu oluşan duruma verilen addır.

isFull Fonksiyonu C Kodu

bool isFull()
{
    if(stack.top == MAX-1)
        return true;
    else
        return false;
}

Aslında tabii fonksiyon yazmak zorunda falan değiliz, ancak bu şekilde daha şık olmakta. MAX değeri dizimizin boyutunun ta kendisidir. Bir önceki yazımızda Stack Oluşturma İşlemi konusunu işlemiştik. MAX değeri de oradan geldi.

Yani diyoruz ki, eğer stack yapımızın top değeri MAX-1 ise Stack dolu, true döndür, değilse false döndür.

isEmpty Fonksiyonu C Kodu

Bu da Stack Pop İşlemi yardımcısı olan fonksiyondur. İşlem yaparken kafayı yemiş şekilde boş bir yığından eleman çıkarmaya çalışmasın, bilgisayarın kafası karışmasın diye yapılan bir fonksiyondur.

bool isEmpty()
{
    if(stack.top == -1)
        return true;
    else
        return false;
}
yukarıdaki işlemde kafanıza şu soru takılabilir, top değeri nasıl -1'e eşit olabilir ki zaten diyebilirsiniz. İşte o işi biz programı çalıştırırken main fonksiyonu içerisinde top değerine -1 atayarak halledeceğiz. Yani stack programımız çalışırken stack.top değeri -1'e eşit olmalı. Zaten bu durumu kontrol edecek.

Etiketler: , , , , ,