C#

C# Queue ve Stack Koleksiyonları – Web Tasarım & Programlama

Bu dersimizde C# Koleksiyonlarından olan Queue ve Stack koleksiyonlarını inceleyeceğiz.

Queue Koleksiyonu ile başlayalım. Queue kelimesi kuyruk anlamına gelir. FIFO (First In First Out) yani ilk giren ilk çıkar işleyişine göre çalışan bir koleksiyondur.

Bu işlemi günlük hayattan örnekleyecek olursak bankaları verebiliriz. İnsanlar bir bankaya gittiğimizde sıra numarası almaktadır. İşlem yapılmak için çağırılan kişi numarayı önce alan kişi olacaktır.

Queue koleksiyonundaa ekleme ve çıkarma yapmak için 2 metot bulunmaktadır.

Enqueue() metodu kuyruğun sonuna bir eleman ekler.

Dequeue() metodu kuyruğun başındaki elemanı çıkarır.

Queue sınıfı, IEnumerable, ICollection ve ICloneable arabirimlerini uygular.
Listeye bir öğe eklediğinizde buna kuyruğa alma (Enqueue) denir.
Bir öğeyi kaldırdığınızda, buna kuyruktan çıkarma (Dequeue) denir.
Kuyruk, referans türleri için null değerini geçerli bir değer olarak kabul eder.
Öğeler bir Kuyruğa eklendikçe, dahili dizinin yeniden tahsis edilmesiyle kapasite gerektiği gibi otomatik olarak artırılır.
Sırada, yinelenen öğeleri saklamanıza izin verilir.
Kuyruğun kapasitesi, Kuyruğun tutabileceği öğe sayısıdır.

Şimdi Queue koleksiyonu ile ilgili örneğimize geçelim.

Örneğimizde Sıra Al ve Çağır butonları bulunmaktadır.

Şimdi kodlarımızı yazalım. İlk olarak projemize System.Collections namespace’ ini dahil ediyoruz.

Diğer kodlarımız ise aşağıdaki gibi olacaktır.

Ekran Çıktısı:

Şimdi diğer benzer bir koleksiyon olan Stack koleksiyonuna geçelim. Stack kelimesi yığın anlamına gelir. Queue koleksiyonundan farklı olarak LIFO (Last In First Out) yani son giren eleman ilk çıkar işleyişine sahiptir. Koleksiyondan bir eleman çıkarıldığında bu son eleman olacaktır.

Stack işleyişine günlük hayattan bir örnek vermek gerekirse bir çok programda bulunan Geri Al butonunu gösterebiliriz. Yapılan işlemler uygulama tarafından hafızaya alınmaktadır.

Geri Al butonuna basıldığında ise son yapılan için geri alma işlemi yapılmaktadır. Geri alma işlemine devam edildiğinde ise geri alma işi son yapılandan başa doğru devam edecektir.

Stack koleksiyonunda ekleme ve çıkarma işlemi için aşağıdaki metotlar kullanılmaktadır.

Push() metodu koleksiyona bir değer ekler.

Pop() metodu koleksiyona eklenen son elemanı çıkarır.

Örneğimize geçelim.

C# Kodları:


Source link

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu