C# Stack Sınıfı

Stack, ilk giren son çıkar işleyişine sahip bir koleksiyondur. Diğer bir deyişle; ilk eklenen elemanın koleksiyondan en son çıkarıldığı ve en son eklenen elemanında ilk çıkarıldığı bir veri yapısıdır (LIFO).

Stack tıpkı diğer koleksiyon sınıfları gibi dinamik bir yapıya sahiptir. Yani eleman eklendikçe boyutu dinamik olarak artmaktadır.

Stack sınıfının Pop() ve Push() olmak üzere 2 temel metodu bulunmaktadır.

  1. Pop(): Stack’in en üstündeki nesneyi çıkarır.
  2. Push(): Stack’in en üstüne bir nesne ekler.

Stack’in Kullanım Yerleri

Tarayıcılarda bulunan “Geri“ butonu, en son ziyaret edilen sayfaya dönme işlemini stack veri yapısını kullanarak gerçekleştirmektedir. Ziyaret edilen siteler Stack’e atılıp, her “Geri“ butonuna tıklanıldığında Stack’in tepesinde bulunan site, Stack’ten çıkarılıp (POP), tarayıcının adres çubuğuna gönderilerek, bir önceki web sitenin görüntülenmesi sağlanır.

Aynı şekilde word, notepad++ gibi editörlerde bulunan “Geri Al“ butonu, en son yaptığımız işlemin geri alınmasını yine Stack veri yapısını kullanarak gerçekleştirmektedir.

Program yazarken, bir fonksiyonun içerisinde, başka bir fonksiyonu çağırdığımızda; En son çağrılan fonksiyon tamamlandıktan sonra kendisinin çağrıldığı fonksiyonda; çağrıldığı satıra dönebilmesi için o yerin adresini Stack’te tutmaktadır.

Tags :