C#

C# Yığın (Stack)

stack

Merhaba, bu yazımda OOP için önemli bir yapı olan yığın(stack)dan bahsedeceğim. Yığın, bir veri yapısıdır. “Veri yapısı nedir?” diye sorarsak şu cevabı verebiliriz: “Verilerin saklandığı ve formatlandığı yapılardır.” Algoritmalarda dizi olarak tanımlanan verilerin değişik şekillerde düzenlenmesi gerekebilir. bunun için veri yapıları tanımlanmıştır. Birkaç tane veri yapısı bulunmaktadır. Bunlar;  Yığın (Stack), Kuyruk (Queue), Bağlı listeler (Linked lists) ve Ağaç (Tree)’tır. Bizim için önemli olan şu an için yığın(stack) olduğu için ben bu yapıya değineceğim.

Yığınlar, ilk giren son çıkar mantığı ile çalışan bir yapıdır. Örneğin, elinizde bir kutu var ve bu kutuya kitapları üst üste koymaya başlıyorsunuz. Tekrar kutuyu boşaltmak isteğinizde en son koyduğunuz kitaptan ilk kitaba doğru çıkartmaya başlarsınız. İşte yığının veriyi düzenleme mantğı tam olarak budur. Yığın bir veri motoru(data engine) olarak da adlandırılır. Yığın sınıfının C#’ta tanımlı yapısında iki temel işlem bulunmaktadır; ekleme(push) ve çıkarma(pop).

Bunun dışında;
empty:  yığıtın boş olup olmadığını belirleyen işlem)
stacktop: yığından çıkarılmaksızın en üstteki elemanın değerini döndüren işlem) işlemleri de bulunmaktadır. Önemli bir not; yığının en üstüne eklenen bir veri çıkarılırsa bir daha kullanılamaz.

Stack

Bir örnekle konuya incelemeye devam edelim, ancak biz örneğimizde kendi yığın sınıfımızı oluşturalım:


Bu yazımızında sonuna geldik. Size yığın yapısını anlatmaya çalıştım. Veri yapıları OOP için önemli bir konu. Diğer yapıları da incelemenizi tavsiye ederim. Takibe devam 🙂

İstanbul’un amatör seyyahı. Kod yazmak hayat felsefesi. Android, Java, C# ve Javascript’le yakından, tüm teknoloji dünyasıyla uzaktan ilgileniyor. Drone meraklısı ama sahibi değil.
  • Selahaddin Iliş

    slm yarın sınavım var bı kac sorum olacak yardmcı oalblrmsn ?